8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-30 08:43:04 +01:00
Commit Graph

248 Commits

Author SHA1 Message Date
robocop
5294fda616 Misc. 2008-04-15 09:31:35 +00:00
alexpeshkoff
b0cc1c0481 Implemented remote cancel operation call. Switched to PROTOCOL_VERSION12. 2008-04-14 09:45:16 +00:00
robocop
1c52bbf025 It seems that finally the interfaces are synchronized.
The compiler produces a lot of errors when linking why.cpp against inter_proto.h (that has the real function signatures) instead of entry.h, but it's the only way to verify that the parameters are coherent.
2008-04-04 13:43:44 +00:00
robocop
b2e8da134f Trying to fix the interface again.
Sorry for going back and forth with constness, but in some cases it was impossible to ensure that input params aren't overwritten, thus I took const away to avoid making promises that can't be met (see the case of fetch that uses a supposedly input-only param to return data). Overwriting memory that was declared const initially is a serious error in C++ with undefined outcome so we better do not lie.
2008-04-03 10:17:24 +00:00
asfernandes
b5f62a63b0 Misc 2008-03-30 20:43:36 +00:00
robocop
27b24cccf3 The boss prefers clean() instead of the sui generis unset(). 2008-03-30 09:49:22 +00:00
robocop
5b7cb4214b Fixing the damn interface.
Cleanup.
2008-03-30 09:37:57 +00:00
robocop
88349111c8 Probably I could put RFlags with a better name elsewhere for general usage, but for now I'll test the waters with Rsr. 2008-03-30 03:02:12 +00:00
robocop
9030e2a9d5 Misc. 2008-03-28 14:17:21 +00:00
robocop
443feabad9 Since Vlad and Alex did the hard work, I took the comment from Mike (approx 6 years ago) and did the small change function->method. 2008-03-28 13:36:19 +00:00
alexpeshkoff
4e5a83e767 1. Make remote port RefCounted object.
2. Removed deferred cleanup hack.
3. Fixed races when events are delivered - thanks to Vlad.
2008-03-27 10:15:05 +00:00
asfernandes
1e59afbc6e Misc 2008-03-27 02:27:56 +00:00
hvlad
9318660f3a Finish cleanup in remote started by Alex (remove ALLR etc) 2008-03-25 18:58:31 +00:00
alexpeshkoff
6809f624fc Remote cleanup:
1. Avoid ALLR memory allocation routine (use new / delete).
2. Use common (TypedHandle) class to control consistency of handles.
3. Make ctors and dtors work - in most cases more work is needed to make them meaningful.
2008-03-24 15:28:38 +00:00
hvlad
262379d8f9 Fix invalid variable for received data size 2008-03-19 18:52:31 +00:00
robocop
82f50ff590 Allocate only the needed buffer. 2008-03-18 12:58:21 +00:00
hvlad
5c2300fc65 Fixed few my mistakes noted by Claudio 2008-03-15 13:46:28 +00:00
robocop
b741dd8a0d Simplification. 2008-03-15 10:28:25 +00:00
asfernandes
4762e049ee Misc 2008-03-14 02:50:40 +00:00
hvlad
2423a4bc3e Use EnsureUnlock where appropriate. Remove not used thread accounting in CNTL. Fix few mistakes\typos in my previous commit. 2008-03-13 13:48:05 +00:00
alexpeshkoff
627e7f2846 Fixed unexpected server exits. Slightly better diagnostics for them added. 2008-03-13 12:05:49 +00:00
robocop
d5ff786e3d Misc. 2008-03-13 10:41:38 +00:00
dimitr
ff090e6a7b Cleanup. 2008-03-12 16:42:51 +00:00
hvlad
4115317607 Make remote module thread-safe, remove THREAD_EXIT\THREAD_ENTER from it, refactor server code and some cleanup. To be continued. Please check posix builds. 2008-03-11 14:11:32 +00:00
robocop
2912e6a5be Cleanup and misc. 2008-03-10 08:44:07 +00:00
alexpeshkoff
7dacbbbd74 Make fb_disconnect_transaction, fb_shutdown and fb_shutdown_callback public API calls.
Related cleanup.
2008-03-03 17:47:09 +00:00
alexpeshkoff
58f8675e57 1. Make use of gds__log_status() more consustent (no Database: line in log when database is not specified).
2. A bit better logic when error happens during provider shutdown.
2008-03-03 13:59:09 +00:00
alexpeshkoff
00c63c1f8d 1. Make signals handling in yValve MT safe.
2. Introduce new private API calls, fb__shutdown() and fb__shutdown_callback().
3. Introduce fb_smp_server - binary to run superclassic on posix.
4. Various cleanups.
2008-02-28 18:42:30 +00:00
dimitr
c1f75dcdf8 Ported SQLSTATE from Vulcan.
Part II: handling of isc_arg_sql_state.
2008-02-24 15:02:04 +00:00
dimitr
e41bdb2aa5 Shutdown the port instead of exiting the process. This has the same effect on CS but works for other modes as well. 2008-02-12 14:06:27 +00:00
dimitr
04e90d8033 Misc. 2008-02-02 14:40:50 +00:00
alexpeshkoff
e867656bf4 cleanup + additional security DB protection 2008-01-29 15:01:04 +00:00
dimitr
a3782c9362 Oops. Incomplete stuff has been accidentally committed. Rolled back now. 2008-01-28 14:09:05 +00:00
dimitr
b353ff4afb Misc sync changes. 2008-01-28 13:44:11 +00:00
dimitr
b68df58eac Misc. 2008-01-26 23:23:15 +00:00
alexpeshkoff
936eb2b3a8 Initialize context pool on server startup 2008-01-24 11:08:00 +00:00
alexpeshkoff
39896cb955 Fixed CORE-1671: atexit() calls in client libraries cause segfaults
and CORE-1079: Every attach of fbclient/fbembed library leaks 64KB of memory

To do it:
- created new template GlobalPtr, controlling access to destructors of global objects.
- applied it to global objects.

Also some related cleanup.
2008-01-23 15:52:40 +00:00
dimitr
46b3b6c0dd Preparation for merging my own changes. 2008-01-17 13:07:03 +00:00
dimitr
f25819fb19 The merge continued. 2008-01-16 07:55:28 +00:00
asfernandes
e0226e17fb Misc 2008-01-09 23:57:18 +00:00
dimitr
3201c3de4c Fixed CORE-1681. 2008-01-09 10:20:57 +00:00
dimitr
804be84213 Fixed possible crashes due to an already disconnected port. 2007-12-15 10:30:03 +00:00
alexpeshkoff
5bf6bd05d9 Fixed CORE-1543: Security bug in trusted authentication 2007-10-26 13:17:33 +00:00
dimitr
697d77edec Fixed CORE-1459. 2007-09-14 06:55:15 +00:00
dimitr
204b2881e7 Fixed CORE-1460.
Make INET to use the same buffer as other transports instead of the hackery usage of p_resp_blob_id.
2007-09-14 06:00:17 +00:00
dimitr
07ebaa0ce9 Fixed CORE-1403. 2007-08-03 08:41:45 +00:00
alexpeshkoff
31beadfb64 fixed BOF during op_connect processing, avoid use of sprintf() in remote 2007-06-21 08:40:04 +00:00
hvlad
f31a3116ec Fixed bug with wrongly initialized remote statement when lazy_port feature active.
It visible with TCS's test DSQL_DOMAIN_20
2007-06-01 12:46:30 +00:00
hvlad
88671bf258 Correct error handling for deferred executed statements 2007-05-17 13:03:57 +00:00
alexpeshkoff
d63491e3c5 Finished gcc-warnings cleanup 2007-04-11 16:05:40 +00:00
hvlad
c13e67fe49 Restored broken compatibility between clients and servers of different versions (2.1 and other) 2007-04-04 10:31:47 +00:00
robocop
b776f1f19c Minor corrections. 2007-04-03 08:18:11 +00:00
hvlad
2c10b3ff92 Implement one more LazyPort feature : defer op_execute packet when it possible 2007-04-01 21:42:40 +00:00
alexpeshkoff
dec4ded1f5 fixed unregistered bug, reported by Dmitry privately - partial and full XDR packets may be mixed now in network packets in any way 2007-03-30 12:56:57 +00:00
robocop
409ff041dd Misc and replaced "IB" by "FB" where it made sense to me. 2007-02-11 09:04:54 +00:00
hvlad
bc521d75a3 Fixed CORE-1119 : Bad code in status vector when running ISC_ER30 from fbtcs 2007-02-01 22:05:18 +00:00
alexpeshkoff
d66281291f 1. Make classic server close shutdown normally when killed by signals 2 & 15.
2. Don't leave running instances of fb_inet_server after database shutdown.
3. To make all this possible - reworked Y-Valve in general.
2007-01-20 14:45:45 +00:00
robocop
91544a92e0 Totally misc. 2006-12-29 08:48:28 +00:00
hvlad
a1e9297bbd Fixed CORE-1067: AV in the engine using some API calls when 'lazy port' feature active 2006-12-25 10:28:41 +00:00
alexpeshkoff
2f48fc38f7 1. Closed security whole with malformed DPB/SPB
2. Avoid memory leak when exception is thrown.
3. Better diiagnostics.
Thanks to Claudio.
2006-12-17 15:53:46 +00:00
robocop
4afa6a29cb Misc. 2006-12-17 09:09:39 +00:00
alexpeshkoff
6bb3545558 fixed posix build after my latest changes 2006-12-10 13:45:02 +00:00
asfernandes
854d870d8f Misc 2006-12-10 00:16:00 +00:00
alexpeshkoff
1a4652f01a Trusted authentication for windows 2006-12-08 18:38:15 +00:00
dimitr
bdc09b234a The remote subsystem should not guess about the internal structure of BLOB ID. 2006-12-04 21:42:27 +00:00
alexpeshkoff
b056a118b5 1. Avoid use of STL
2. Reworked exceptions to make status_exception always hold correct status vector
3. Avoid use of RTTI
2006-05-19 15:17:02 +00:00
robocop
07f4bed382 I don't want another "interprete", so I rename "defered" to "deferred". 2006-05-02 00:04:12 +00:00
hvlad
f94b8bd641 Merge B1_5_Remote_LazyPort branch into HEAD 2006-05-01 22:23:31 +00:00
robocop
a2d0a4d348 Style. 2006-04-18 04:50:02 +00:00
alexpeshkoff
105bff246e removed unneeded h-file 2006-04-17 10:40:28 +00:00
asfernandes
48abddae4c Use THREAD_SLEEP as sleep don't exist in WIN32 2006-04-16 17:09:02 +00:00
alexpeshkoff
fb4888dca1 shutdown working threads before server shutdown 2006-04-14 16:46:12 +00:00
robocop
00c9d548a6 Handle zero-length strings even if we have our buffer full. 2006-04-09 06:53:38 +00:00
robocop
b8636c120b Refactor this damn unreadable code and take into account the problem Adriano found with zero length file names in my previous commit. 2006-04-09 00:53:55 +00:00
robocop
1f22045df1 I think I'm fixing a potential buffer overrun here. 2006-04-07 04:51:13 +00:00
asfernandes
2b5eef3103 Correction 2006-04-07 02:55:34 +00:00
alexpeshkoff
f59a457b5d validate port_context before use to avoid AV in remote 2006-04-06 13:34:09 +00:00
robocop
c5f2284b15 Style. 2006-04-06 08:18:53 +00:00
alexpeshkoff
74b7418943 we should not loose status vector held in status_exception 2006-03-15 17:25:49 +00:00
robocop
8f1cf8f2cb Commit correct signature for events-related calls. 2006-03-10 08:23:40 +00:00
asfernandes
22eca372ab Formatting 2006-03-07 03:12:48 +00:00
alexpeshkoff
402d918e74 Use named constant for buffer size 2006-03-06 13:51:58 +00:00
alexpeshkoff
b4ed43ddf8 1. Fixed win32 classic build.
2. Attempt to fix SF#1260310.
2006-03-06 11:03:19 +00:00
alexpeshkoff
9e21527396 fixed debugging code - thanks to Claudio 2006-03-05 10:26:45 +00:00
alexpeshkoff
a6151c44c9 Fixed SF bug 1385092 2006-03-03 16:20:42 +00:00
dimitr
7ca955e43a Minor cleanup. 2006-02-04 10:37:15 +00:00
hvlad
73dcebc962 Replace "../jrd/jrd_time.h" with "../common/classes/timestamp.h" 2006-02-03 13:13:27 +00:00
alexpeshkoff
dccce62333 simpler way to detect redirection attempt 2006-01-06 12:29:12 +00:00
alexpeshkoff
8de8ef96ce added Redirection parameter to firebird.conf 2005-12-21 10:10:37 +00:00
alexpeshkoff
62a24d46e4 1. Moved data structures, written to database file, into ods.h.
2. Added new types of clumplets to ClumpletReader and ClupmletWriter.
3. Applied modified ClumpletReader and ClupmletWriter to /remote and partially /jrd.
4. Added active protection from remote brute-force attack to services API.
2005-11-27 20:53:09 +00:00
dimitr
11b954f324 Fixed a couple of issues in the port cleanup logic:
- improper thread data operations
- no rollback for a broken INET port
2005-11-24 12:15:41 +00:00
robocop
2814294027 Misc. 2004-12-16 03:03:13 +00:00
skidder
0e68abffbf Address the security issue in remote address handling code pointed by Claudio. Hack REMOTE server-side exception handling to make it not crash when exceptions actually happen. The latter seems to be the very old problem, in IB6 code looks the same 2004-11-29 04:39:20 +00:00
robocop
bb170bd3b6 isc_interpret is fb_interpret again.
Please do a full rebuild.
2004-11-28 01:03:05 +00:00
robocop
425bbc8ef9 Comment no longer applies. 2004-11-27 05:45:46 +00:00
skidder
55c4e0ac85 CLIENT_ADDRESS and NETWORK_PROTOCOL variables support 2004-11-26 01:01:27 +00:00
robocop
d6535351a2 Misc: style. 2004-11-24 09:22:07 +00:00
robocop
070eaa8415 Misc. 2004-11-18 08:40:13 +00:00
hvlad
b4a0d39fe1 Fix buffer overflow when string carried with status vector is too large. String will be truncated to 1023 bytes 2004-11-17 12:25:22 +00:00
alexpeshkoff
ff5dd732d3 more active use of Firebird::string in remote 2004-11-07 14:44:59 +00:00