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

292 Commits

Author SHA1 Message Date
alexpeshkoff
86cd8cb6b3 1. Added parameter 'shutdown reason' to fb_shutdown() API call. It's passed to shutdown
callback function, and helps to take correct action in it. This fixes CORE-1827: Win32
Embedded Server should pass control to application before calling exit(3).
2. Removed unneeded any more flag in isql and qli, used earlier to distinguish between
kinds of shutdown.
2008-05-16 11:31:57 +00:00
robocop
8a28565ea7 Misc. 2008-05-08 08:19:50 +00:00
hvlad
9280a572a0 Avoid long blocking of att_mutex and make sure it is always released when attachment deleted.
Move active requests cancellation at engine shutdown from Y-valve into engine and let them stop execution before deletion of attachments.
Make sweep run in separate thread despite of engine architecture.
2008-05-04 12:49:29 +00:00
asfernandes
8d04f25fb3 Misc 2008-04-30 01:42:09 +00:00
alexpeshkoff
1b20fba1e9 Fixed "-s" switch in posix CS 2008-04-29 08:15:36 +00:00
asfernandes
e18ac3cb53 Misc 2008-04-24 01:53:40 +00:00
hvlad
3c353209d2 Implement CORE-818 : Server needs to detect disconnects.
For INET only.
2008-04-23 09:38:15 +00:00
alexpeshkoff
8a1b11482f Fixed races during disconnect 2008-04-21 09:53:28 +00:00
dimitr
46adac380c Misc. 2008-04-20 14:35:23 +00:00
dimitr
c74650aa5f Fixed CORE-1357. 2008-04-20 14:02:51 +00:00
asfernandes
d75951e8e5 Misc 2008-04-18 01:37:44 +00:00
alexpeshkoff
3c35984950 fixed gcc compilation 2008-04-17 16:25:23 +00:00
hvlad
b59d7731ec Ensure port can't be deleted ... addition 2008-04-16 14:19:58 +00:00
hvlad
cd4d7ec93d Ensure port can't be deleted by another thread while receiving data (usual socket disconnect event) during disconnect. Just hold one more reference to it. 2008-04-16 12:48:28 +00:00
robocop
5294fda616 Misc. 2008-04-15 09:31:35 +00:00
asfernandes
79f8d2ceef Misc 2008-04-15 00:57:19 +00:00
alexpeshkoff
b0cc1c0481 Implemented remote cancel operation call. Switched to PROTOCOL_VERSION12. 2008-04-14 09:45:16 +00:00
asfernandes
0adc1aa1f9 Misc 2008-04-04 02:14:17 +00:00
alexpeshkoff
6699ab0e15 Fixed CORE-1807: fbserver assigned to non-canonical port 2008-04-03 15:01:40 +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
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
hvlad
2e7374735e Restore accidentally deleted lines 2008-03-26 14:20:43 +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
asfernandes
18f879a678 Misc 2008-03-23 18:21:49 +00:00
hvlad
5cb43d8f03 Fixed CORE-1763 : The client library does not set options SO_KEEPALIVE, TCP_NODELAY for socket at connection 2008-03-21 15:39:42 +00:00
alexpeshkoff
2ba77dbed5 Fixed races when using uninitialized object in unhook_disconnected_ports - thanks to Dmitry Kovalenko 2008-03-21 09:12:43 +00:00
asfernandes
3aca6f92b1 Misc 2008-03-21 02:42:24 +00:00
alexpeshkoff
3e95789206 Cleanup 2008-03-17 09:08:48 +00:00
asfernandes
262dbadc4f Misc 2008-03-15 17:55:27 +00:00
hvlad
5c2300fc65 Fixed few my mistakes noted by Claudio 2008-03-15 13:46:28 +00:00
robocop
d9d95267a7 A bit more readable and more friendly with source code analysis tools (including code completion in editors). 2008-03-15 10:27:49 +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
robocop
c6d8b0f46f Style. 2008-03-05 08:39:26 +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
alexpeshkoff
48f80bc4a3 fixed races during server shutdown 2008-02-06 17:26:35 +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
asfernandes
05b90fa684 Eliminate some warnings 2008-01-16 14:37:26 +00:00
dimitr
f25819fb19 The merge continued. 2008-01-16 07:55:28 +00:00
alexpeshkoff
3e0d8ebc5b Fixed CORE-1603: Possible buffer overflow with long user name 2007-11-19 16:18:59 +00:00
hvlad
2b47bbe55b Revert files back after wrong commit 2007-11-19 00:21:18 +00:00
hvlad
86f1141328 Execute statement with support of external data source 2007-11-18 22:59:20 +00:00
paulbeach
c823619e92 HPUX Port 2007-11-12 15:18:49 +00:00
robocop
a3dfe97258 Parameter blocks are UCHAR streams.
Make their length unsigned, too.
2007-10-29 03:23:56 +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
hvlad
1b06f7802a Fixed bug CORE-1397 : Possible vulnerability in remote server 2007-08-02 16:26:21 +00:00
alexpeshkoff
ea8ba3370d Cleaned up mutexes - removed MUTX_T and related macros 2007-06-06 12:37:24 +00:00
robocop
d90bf91fbd Misc. 2007-06-06 08:08:36 +00:00
hvlad
5dab01a578 Fixed CORE-1303 : Infinite loop in SS remote listener 2007-06-04 14:17:15 +00:00
hvlad
0eb638700f Fix for CORE-1276: Sometime INET error reported as 0 in firebird.log instead of real error code 2007-05-21 20:25:42 +00:00
robocop
f2f3d205ce Misc. 2007-04-20 09:47:14 +00:00
alexpeshkoff
24015c14cd fixed gcc warning 2007-04-19 09:12:32 +00:00
asfernandes
20299bb856 Misc 2007-03-24 17:44:09 +00:00
alexpeshkoff
5f19566f76 Patch by Damyan Ivanov - accept localhost connections without /etc/host.equiv 2007-03-22 13:13:38 +00:00
alexpeshkoff
2c93118e86 Misc diagnostics 2007-02-24 11:27:52 +00:00
dimitr
6466e7b12d 1) WNET and XNET cannot support OOB transmission, so they should not ask for that.
2) Cleanup the INET protocol types.
2006-12-15 15:47:52 +00:00
alexpeshkoff
1a4652f01a Trusted authentication for windows 2006-12-08 18:38:15 +00:00
dimitr
25bf9d6c11 Fixed CORE-1017. 2006-11-28 10:21:21 +00:00
asfernandes
efcadd67a1 Misc 2006-10-25 15:09:13 +00:00
paulbeach
d668ed78e6 Commit the right inet.cpp and fix for CORE-966 2006-10-25 09:54:32 +00:00
robocop
27a9f9d586 Undo Paul Beach's fix for CORE-966 in HEAD because the patch is malformed and contains outdated code. Maybe it was intended for v2.0. 2006-10-25 07:05:25 +00:00
paulbeach
dd89b18833 Fix for Core-966 2006-10-24 15:06:24 +00:00
dimitr
a09dc97d6b Corrections, thanks to Claudio. 2006-07-20 06:19:25 +00:00
asfernandes
ea0435247a Misc 2006-07-18 02:45:35 +00:00
dimitr
a9348e5766 Fixed CORE-833. 2006-07-17 11:10:18 +00:00
dimitr
2bc42d7dba Cleanup. 2006-06-02 08:26:08 +00:00
alexpeshkoff
b953f965b0 Fixed setsockopt() level - thanks to Fred 2006-06-02 07:16:39 +00:00
alexpeshkoff
d8560dd061 common code to set NODELAY option 2006-05-24 14:08:06 +00:00
hvlad
f94b8bd641 Merge B1_5_Remote_LazyPort branch into HEAD 2006-05-01 22:23:31 +00:00
robocop
d306dc5ef4 Since TCP_NO_DELAY is gone, comments regarding it are obsolete. 2006-04-29 03:01:40 +00:00
dimitr
ccc620e334 A bunch of changes targeted to support multi-instancing on win32. 2006-04-20 10:35:44 +00:00
robocop
67919047a2 Try to comply with MacOS docs... there's work to do in inet.cpp with FB_SETOPT_FLAGS. 2006-04-19 03:07:34 +00:00
alexpeshkoff
f12d282788 avoid too much #ifdef's inside the file 2006-04-18 09:43:37 +00:00
robocop
a89957c0ab Restore Win32 port to compilable state. 2006-04-18 04:48:32 +00:00
kkuznetsov
450fc1d863 Fix compile error on Solaris 2006-04-17 18:39:22 +00:00
alexpeshkoff
4eb30fcf39 Don't raise SIGPIPE when other side terminated connection 2006-04-17 15:52:56 +00:00
robocop
2e9353d7e7 Delete dead code after checking with Dmitry.
The B.O. are still there when copying the result of GetCommandLine().
2006-04-11 07:18:53 +00:00
robocop
4243e7bcc4 Style. 2006-04-09 06:46:28 +00:00
dimitr
442ff93a3b Nagle algorithm is now disabled by default, so there's no need to print an appropriate message in the server log. 2006-04-05 07:08:32 +00:00
dimitr
d123ead3a5 1) Set NoNagle depending on config only.
2) Set socket options for Win32 CS.
2006-04-05 05:04:52 +00:00
alexpeshkoff
1b6df6110a fixed server hang in case of broken client 2006-03-20 16:29:04 +00:00
robocop
179a4b7cfb Style. 2006-03-07 05:44:13 +00:00
alexpeshkoff
a6151c44c9 Fixed SF bug 1385092 2006-03-03 16:20:42 +00:00
robocop
10cb928ddc More cleanup. 2006-02-23 06:52:25 +00:00
robocop
1f84bac700 Mark unused data members, discover more code associated to conditional compilation, clean some places, replace custom loops by memcpy and memset when possible, etc. 2006-02-23 05:08:26 +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
4b40679a8d fixed posix build 2006-01-16 08:47:20 +00:00
robocop
b67b0219ab Change from getenv to readenv. This is still getenv in Linux/UNIX but GetEnvironmentVariable in Windows. 2006-01-14 04:48:59 +00:00
alexpeshkoff
688cfd53eb Misc 2005-12-23 08:52:31 +00:00
dimitr
e4f0ad0358 Fixed lost PORT_async flag for WNET + misc. 2005-11-30 12:37:00 +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
b570b3e3db Fixed cleanup of the broken port in classic. Let's always close the connection properly. 2005-11-24 14:03:26 +00:00
alexpeshkoff
db5c130d72 Make EACCES non-fatal when setting TCP_NODELAY 2005-04-29 17:03:46 +00:00
kkuznetsov
633ec5fd26 Fix my error which breaking non posix things 2005-04-06 13:02:13 +00:00