8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-28 02:43:03 +01:00
Commit Graph

276 Commits

Author SHA1 Message Date
robocop
3d53c1b75b Let's hope this fixes the incompatibilities between safe_interpret and the old gds_interprete. 2005-09-24 05:09:05 +00:00
alexpeshkoff
d15f6b11fc avoid unpredictable behaviour of gds__log() on posix in signal handlers 2005-08-29 14:57:43 +00:00
skidder
9f04361ab1 Oops, committed some debugging code which was not supposed to be exposed to public :-) 2005-07-21 00:44:14 +00:00
skidder
286c14843b Global handles need to be closed or we have the leak during client/engine DLL unload.
The cleanest solution would be to port FileObject from BV3 branch here and use it,
but this hack will do either.
2005-07-21 00:42:51 +00:00
skidder
699c914cbf little debug logging improvements 2005-07-19 23:27:38 +00:00
asfernandes
354a158736 Misc. 2005-06-06 20:44:10 +00:00
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
alexpeshkoff
63c5cebdcf fixed embedded build 2005-05-16 11:08:14 +00:00
alexpeshkoff
74c88a4e97 fixed a couple of buffer overflows in gds__prefix*() functions family 2005-05-14 10:45:40 +00:00
robocop
1caceee875 Use static_cast when converting from void*, not reinterpret_cast. 2005-03-26 05:39:44 +00:00
robocop
014d90ff59 Misc. 2004-12-08 04:12:26 +00:00
robocop
af6a16107a Misc. 2004-11-30 06:18:39 +00:00
robocop
bb170bd3b6 isc_interpret is fb_interpret again.
Please do a full rebuild.
2004-11-28 01:03:05 +00:00
robocop
d6535351a2 Misc: style. 2004-11-24 09:22:07 +00:00
dimitr
1859b19b9a Added missing BLR handling to the internal blob filter 2004-11-17 18:18:44 +00:00
robocop
eb99bbcccf Poor man's version of the old gds_alloc_report. 2004-11-17 08:56:07 +00:00
alexpeshkoff
ea9e900ab3 cleanup of methods, storing data in plain char* 2004-11-14 18:05:13 +00:00
robocop
e5be73b048 Misc: extra semicolons do not help. :-) 2004-11-07 10:47:20 +00:00
robocop
e1573bf6ce Fix wrong comment due to copy/paste. 2004-11-06 07:17:18 +00:00
skidder
933063c7ce Slightly adjust Dmitry's Firebird::TimeStamp class to make it more useful, change is coordiated with Dmitry. Use thread-safe localtime_r routine when it is available 2004-11-04 19:14:20 +00:00
skidder
3e26513b38 fb_interpret->isc_interpet, deprecate isc_interpete, clean interface a little bit 2004-10-25 03:53:03 +00:00
robocop
8fd795893f Fixed some possible buffer overruns and marked others. 2004-10-09 01:47:22 +00:00
robocop
5833e93321 VMS-related changes. Just in case. 2004-10-07 09:46:03 +00:00
robocop
d6f9a7874a Close vulnerability #6 in gds__interprete's new version.
In the loop, if several parameter exist, they are copied one after another in the same dynamic buffer. Therefore, for the 2nd param and more, we don't have the full buffer size to copy arguments, but only the remainder. Big buffer overflow could happen here.
If there's no buffer at all (from fix #5), the empty literal string is passed.
Now, fb_interpret seems ready to be used.
2004-10-04 08:37:49 +00:00
robocop
4964a1c7a1 Close vulnerability #5 in gds__interprete's new version, reported by Dmitry Sibiryakov.
When copying paramters to a dynamic buffer, the null terminator was written beyond the buffer's end.
Additionally, if there's no buffer at all (to be evident when fix #6 is posted), the empty literal string is passed.
2004-10-04 08:07:28 +00:00
robocop
43c46a29cd Close vulnerability #4 in gds__interprete's new version.
Static array with 10 places to hold pointers to parameters (isc_arg_string, isc_arg_number & isc_arg_cstring) may overflow in the loop that fills it and doesn't check bounds.
2004-10-04 07:38:28 +00:00
robocop
e5ad0f1a7f Misc cleanup. 2004-10-04 04:59:43 +00:00
robocop
bdf5dea379 Close vulnerability #3 in gds__interprete's new version.
Traditional sprintf could write past the end of buffer.
2004-10-04 04:44:52 +00:00
robocop
1da60e8b11 Fix mistake in operator until I'm ready to commit our utility snprintf. 2004-10-03 09:31:08 +00:00
robocop
16dfc501c1 Close vulnerability #2 in gds__interprete's new version.
Work in progress (regarding SNPRINTF wrapper, too).
2004-09-25 10:23:41 +00:00
robocop
1563cd7761 First attempt to close vulnerability reported by Daniel Urban 2004-09-22 08:56:04 +00:00
robocop
e6cb17cac6 Vulnerability reported by Daniel Urban.
First step: reorganize code.
Please do a full rebuild after retrieving those changes.
2004-09-22 01:59:39 +00:00
robocop
337614c51c 1) static_cast is enough from void* to another type
2) Style
2004-09-20 08:39:03 +00:00
robocop
9252c03bcb Fix possible minor problem in debug version 2004-07-07 03:42:54 +00:00
skidder
f4e7ebdd3b Implement rudimentary framework to track lifetimes of active BLOBs.
This solves the following issues:
1) Outrageous memory consumption when blobs are converted from strings during request processing
2) Materialization doesn't cause invalidation of BLOB IDs too early.
Original behaviour caused errors with updatable views or procedures receiving BLOB arguments.
2004-06-22 20:13:10 +00:00
alexpeshkoff
1591a54e5e Thread cleanup:
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
brodsom
64c1dee04e -Use C++ struct declaration style. 2004-05-24 17:31:47 +00:00
brodsom
75a0483d75 -Comment some common.h unused macros
-Replace VA_START macro with va_start function (it was already some places where it is not used)
2004-05-23 23:28:06 +00:00
brodsom
1ffe279896 -Avoid shadow warning 2004-05-12 19:39:17 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
brodsom
657d176dc2 Replace codes.h with iberror.h 2004-05-07 14:09:09 +00:00
brodsom
ef3f5f1911 Rollback until I found a better solution. 2004-05-07 07:19:48 +00:00
brodsom
ce7a5ced08 -Macro cleaning 2004-05-06 22:11:24 +00:00
skidder
e9f8ef102e Fixes needed to make GCC 3.4 happy 2004-05-03 04:25:06 +00:00
brodsom
2f4865a195 Replace defines for constants 2004-04-29 14:51:02 +00:00
brodsom
0daa189563 Removing ib_stdio.h 2004-04-28 22:36:29 +00:00
brodsom
987375ea76 Remove the last remaining dependency from gdsold.h (finishing a cleaning started months ago) 2004-04-21 02:19:48 +00:00
robocop
68c038d132 More cleanup. Get rid of obsolete files, too. 2004-03-30 08:34:14 +00:00
skidder
f26d84f76b 1. POSIX build libraries export only public API. 2. Unify exports for PROD_BUILD and DEV_BUILD. 3. Support for context memory pools. 4. Memory manager has lower memory overhead exceptionally on 64 bit targets 2004-03-25 23:12:50 +00:00
alexpeshkoff
67f1740fea Various cleanup to make engine compile and work after mentioned earlier changes.
Mainly:
1) MemoryPool* => MemoryPool& in arrays' constructors
2) use Firebird::string to keep strings data
2004-03-14 13:40:14 +00:00
skidder
b6e5ccd413 Clean up.
1. gds__alloc doesn't throw
2. Add NOMEM handlers to a couple places
3. kill HAVE_*SNPRINTF conditionals
2004-03-09 00:17:07 +00:00
robocop
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
alexpeshkoff
02c5713428 fixed blr printing - thanks to Nickolay S. 2004-03-01 17:14:00 +00:00
skidder
dc7aab8f9c Fix up exception handling. Handle (do not ignore) std::bad_alloc and generic exceptions, provide syscall and error information in system_call_failed 2004-03-01 03:35:23 +00:00
alexpeshkoff
acea4052aa removed getenv-related code - now in config_root 2004-02-28 19:38:25 +00:00
robocop
5c3c8abd9a Big cleanup.
God have pity on platform maintainers.
I only can compile/test Win32; sorry, folks.
2004-02-20 06:43:27 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
skidder
6ded5ad0cd Fix unix error handling recently broken by Erik in 2.0 branch 2004-01-26 07:34:22 +00:00
skidder
08eee5ebaa Further AMD64 fixes. Given this fixes you may start playing with databases using isql_static. 2004-01-21 07:18:30 +00:00
robocop
fd93837ec3 Cleanup:
const correctness
BOOLEAN -> bool
Vars in scope
Formatting
JRD_REQ -> jrd_req*
JRD_TRA -> jrd_tra*
JRD_REL -> jrd_rel*
JRD_FLD -> jrd_fld*
event -> event_t, EVENT_T dropped, EVENT should go in the future
Frank's corrections
alice's STR -> alice_str*
remote's STR -> rem_str*
etc.
It creates entities and backups and restores for me. :-)
2004-01-03 10:59:52 +00:00
robocop
ad0b5c4de3 General cleanup 2003-12-22 10:00:59 +00:00
robocop
9fafc348bf const correctness
vars in scope
minimal interface cleanup
small bug fixes
2003-11-28 06:48:34 +00:00
brodsom
88a2611ed1 -Removing some unneeded headers (WIN_NT) or explaining why are needed 2003-11-16 16:17:38 +00:00
brodsom
451460c167 -Removing some unneeded headers (WIN_NT) or explaining why are needed 2003-11-16 12:23:24 +00:00
brodsom
23bd035e77 -Fixes to be able to build with gcc 3.3.1 (MinGW) 2003-11-16 10:31:33 +00:00
brodsom
6e8e00c191 -Undo gds__vax_integer to isc_vax_integer and gds__event_* to isc_event_* changes 2003-11-16 01:44:51 +00:00
brodsom
c5253ae8a5 -Replace gds__ constants with isc_ contants
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
2003-11-11 12:19:20 +00:00
bellardo
b0dddc008e Header files no longer needed in OS X 10.3. 2003-11-08 07:31:24 +00:00
robocop
db77ffa605 const correctness, variables in scope, cleanup, etc. 2003-11-07 08:06:35 +00:00
brodsom
89e8f89f86 Extern "C" cleaning 2003-11-06 03:03:36 +00:00
brodsom
ff070a16a8 Replacing assert with fb_assert 2003-11-03 23:59:24 +00:00
eku
da0d0f068f Cleanup usage of gettimeofday. 2003-10-31 11:33:45 +00:00
robocop
9ead7a37b4 const correctness
placed some variables in context
fixed some function signatures
closed a few possible buffer overruns
sorry to the platform maintainers, I can't verify what I did for non-Win32 builds
2003-10-29 10:53:47 +00:00
brodsom
3be589ddd4 -Warning removal
-Style
2003-10-20 18:34:19 +00:00
robocop
8182b6cba2 const correctness and other tasks 2003-10-16 08:51:06 +00:00
skidder
4e8605294e Forward port Sparc fixes 2003-10-10 23:56:57 +00:00
robocop
480c1ee968 const correctness 2003-10-08 08:42:48 +00:00
robocop
c931a674c2 Cleanup.
Hopefully harmless
It should fix the issue introduced with constness in gds__interprete for current applications.
2003-09-29 12:43:14 +00:00
skidder
235db035ce Ok, i'm joining Firebird destruction team with my cleanup:
1. Bring trace DSQL, DYN and BLR trace logging up-to-date
2. Remove redundant CSB pointer dereferences in BLR parser and request compiler
3. Convert RIGHT JOIN to LEFT JOIN early during BLR parsing
4. Check BLR syntax for unititalized contexts usage
5. Some type-safety and const-correctness fixes
2003-09-28 21:36:05 +00:00
robocop
484c6ec372 Cleanup, const correctness, variables in scope, etc.
Having done my best to merge everyone else's changes, I hope the tree can be build with whatever other tools != MSVC6.
2003-09-25 11:49:12 +00:00
brodsom
9d5721473a Removing SHLIB_DEFS 2003-09-22 17:56:35 +00:00
brodsom
09fc777366 Fix signed/unsigned warning 2003-09-15 19:26:41 +00:00
brodsom
f9f663a007 -Change variable name to fix error in MinGW 2003-09-14 01:09:22 +00:00
skidder
2d3d855c9f Make NBACKUP work on Windows 2003-09-13 18:35:39 +00:00
brodsom
a86a19246d -Remove GDS_VAL and GDS_REF (Final commit) 2003-09-12 23:37:06 +00:00
skidder
b24a430c67 Implement fast thread-safe trace facility on Win32.
It is not perfect (keeps log file open), but good enough
2003-09-11 21:33:57 +00:00
skidder
77b17de987 NBACKUP-related changes and some clean-up 2003-09-08 20:23:46 +00:00
brodsom
6a2ef35fda -Remove NULL_PTR
-Remove unneeded NULL casts
-Remove (void) function return cast
2003-08-28 13:16:03 +00:00
aafemt
7f69b3458a some magic for yday() by Vladimir Tcvigun 2003-08-26 10:29:52 +00:00
eku
73137f9d60 Since all supported platforms provide the function strerror(), get rid of
sys_errlist[]. It's not portable anyway.
2003-08-25 07:26:39 +00:00
brodsom
e401cb40c7 -Fix cast warnings
-Fix signed/unsigned comparison warnings
2003-08-09 20:58:34 +00:00
brodsom
e81872b162 -Include var definitions in rdb_codes, codetext, msgs and blh.p headers.
-Uncommited change to codes.epp to allow to used two directories (moving ftn and pas)
2003-07-12 10:24:47 +00:00
skidder
a8dd711938 Little fix to make Linux version compile 2003-07-07 20:06:16 +00:00
dimitr
9a38c81c23 no message 2003-07-05 14:23:52 +00:00
dimitr
ef9fb69fa9 1) Cleanup
2) Some changes for the embedded server
2003-07-05 12:13:17 +00:00
dimitr
f765ec326c Renamed environment variable. Fixed one temp-related crash. 2003-06-25 07:45:00 +00:00
dimitr
dd327f26ee INT is _not_ OK. Today (01-Jun-2003) the overflow occured. 2003-06-01 10:00:54 +00:00
eku
68da33d89d Improved error handling as suggested by skidder. 2003-05-14 12:32:02 +00:00
eku
d496ef4e4e Check for the function mkstemp(). If it's not available, fall back to mktemp(). 2003-05-14 05:40:00 +00:00
skidder
af0bc3449f Fix little issue in temp stuff noted by Claudio Valderrama 2003-05-11 17:12:08 +00:00
dimitr
0002b4ff65 Fixed temp file management in utilities. 2003-05-11 11:48:22 +00:00
dimitr
5c19f223b6 Restore compatibility with VC6. 2003-05-10 13:01:41 +00:00
skidder
ce1dca4ea4 1. Cleanup
2. Rework temporary files management. In particular:
- fix security hole on all POSIX platforms except FREEBSD/OPENBSD related to mktemp usage (possible DoS attacks or privileges elevation) via switching to mkstemp
- fix problem with only 27 unique filenames generated on Win32 (which could cause unpredictable behavior in SS builds)
- pass appropriate flags to CreateFile on Win32 to indicate that files are temporary (this may improve performance a little)
2003-05-09 16:18:32 +00:00
alexpeshkoff
4a544f46a8 Changed gds__log parameter to be const 2003-04-19 16:39:30 +00:00
aafemt
19bb54f2a8 STATUS -> ISC_STATUS 2003-04-10 06:49:16 +00:00
alexpeshkoff
86e6b77b50 1. Fixed potential buffer overflow in gds__prefix* family of functions.
2. Changed second parameter declaration to be const.
2003-04-06 11:40:29 +00:00
brodsom
82baa67399 - Ifdef unused or conditioned code
- Remove intermediate macro
2003-04-03 10:09:59 +00:00
brodsom
c26e93b60f - Avoid signed-unsigned comparison
- alloc_mutex only used for V4_THR
- Correct landId argument.
2003-04-02 11:18:14 +00:00
brodsom
f76755974d Correct formats 2003-04-01 17:58:19 +00:00
brodsom
01141efa30 Use V4_THREADING explicitly instead and remove empty defined macros. This change try to make clear V4_THREADING use. 2003-03-24 13:35:37 +00:00
brodsom
84851d585d Remove nested NOT_USED_OR_REPLACED ifdefs 2003-03-18 01:32:28 +00:00
alexpeshkoff
1391e13f0a Dropped HAVE_*EXIT defines 2003-03-13 15:46:34 +00:00
brodsom
c7d6889883 Put vars and functions inside the same ifdef for which is used (NOT_USED_OR_REPLACED for unused) 2003-03-04 00:09:33 +00:00
brodsom
79a40c0d99 Put declarations and definitions inside the same ifdef condition under which is used. (for not used ones NOT_USED_OR_REPLACED) 2003-03-03 09:22:32 +00:00
fsg
e0dcb77416 Fixed some really old typos.
Included ExecuteStatement in the LINUX-Build
2003-03-02 17:47:22 +00:00
brodsom
292e979471 Remove HUGE_PTR 2003-02-28 13:38:30 +00:00
brodsom
165023d329 Remove FAR_VARIABLE 2003-02-28 12:57:13 +00:00
brodsom
dd621992d5 New macro defined in firebird.h to remove compiler dependencies from cpp sources. 2003-02-27 21:34:41 +00:00
eku
f7b689456f Fixed a "search and replace" error from my previous check-in. 2003-02-17 08:42:00 +00:00
brodsom
6652d5a5bf Remove __BORLANDC__ define 2003-02-14 02:50:10 +00:00
brodsom
3cb91fce80 Remove PIPE and STACK defines (PIPE_SERVER, PIPE_CLIENT, PIPE_LIBRARY, PIPE_SERVER_YVALUE, PIPE_BRIDGE_TO_V3, V3, V3_PATH, ALTPIPE)(STACK_EFFICIENT, STACK_REDUCTION) 2003-02-14 02:24:44 +00:00
bellardo
cf278b782d No longer need the Darwin specific stuff in the prefix functions - it has moved to config_root. 2003-02-13 23:03:10 +00:00
dimitr
67749f906b Fixed exception handling. 2003-02-13 13:33:57 +00:00
dimitr
b096a2593d CONST -> const 2003-02-13 10:11:35 +00:00
brodsom
9a71ae7987 Change #if 0 and #if 1 to NOT_USED_OR_REPLACED 2003-02-12 12:51:07 +00:00
brodsom
b2d9f84d89 Remove win16_only define (unused) 2003-02-11 00:37:37 +00:00
eku
a7f18b2e31 Removed "register" variables from the source code. It's up to the compiler
to hold variables in CPU registers.
2003-02-10 13:28:35 +00:00
dimitr
0ce8652f60 Moved allocator functions back to GDS. MemoryPool is no longer exported. 2003-02-04 20:18:36 +00:00
dimitr
af4334827b Cleanup. 2003-01-19 12:28:32 +00:00
skidder
ba5e11b15c Integrate new memory manager into the engine 2003-01-16 17:47:10 +00:00
nmcc
bb53a90315 Use system system anon mmap on Solaris where supported ie: >= Solaris8
otherwise use orginal FB1 version.
2002-12-30 15:46:46 +00:00
skidder
9b57d8b649 Several little changes to make engine compilable again on Linux 2002-12-16 21:19:51 +00:00
alexpeshkoff
dbfef25568 Rename all links to why.cpp handle to struct why_hndl * (or FRBRD *)
Fixed bug #625899 - bugcheck 291
2002-12-16 16:25:10 +00:00
eku
5b8ffd81c2 Removed unused variables. 2002-12-10 11:53:53 +00:00
kkuznetsov
9dd4a9b4cd Fix some errors in mmap_anon for Solaris 2002-12-02 10:15:59 +00:00
eku
34e9391a97 Use the new macro FB_NELEM to calculate the number of elements in an array. 2002-12-02 09:45:52 +00:00
skidder
db3692790b New changes by Dmitry Emanov. Configuration manager and Windows build environment improvements 2002-11-30 15:08:09 +00:00
kkuznetsov
7de330174f A
A
2002-11-28 15:42:03 +00:00
kkuznetsov
13c187d9ca Fix declaration of mmap_anon 2002-11-21 15:24:17 +00:00
dimitr
68cfa45939 Renamed MSG to GDS_MSG. 2002-11-19 12:36:51 +00:00
dimitr
86325858c4 Use universal path separator. 2002-11-17 15:47:46 +00:00
dimitr
5f61e44ddc Global names change:
FBOK=>FB_SUCCESS
FAILURE=>FB_FAILURE
xxx_FBOK=>xxx_SUCCESS
2002-11-14 08:33:08 +00:00
kkuznetsov
6887f405ab Renaming all occurences of SUCCESS to FBOK 2002-11-13 15:01:21 +00:00
dimitr
7a8af9bceb Cleanup and get rid of the registry. 2002-11-10 14:04:55 +00:00
dimitr
cb77d05ad4 Fixed old config manager usage. 2002-11-07 11:41:11 +00:00
eku
507b9c86c8 Do not redefine MAXPATHLEN. Always use the value supplied by the operating
system (header files).
2002-11-06 07:08:49 +00:00
tamlin
3bd6d4173c Fixed gds__vtov to use native char type, and const correct. 2002-11-03 22:26:52 +00:00
seanleyne
b3ad604669 Removed support for obsolete "PC_PLATFORM" define 2002-10-31 05:06:02 +00:00
kkuznetsov
b8a01b09d3 Reincarnated mmap_anon for solarises pre 2.8 2002-10-30 14:46:16 +00:00
seanleyne
0b82f4aa07 Removed obsolete "Netware" port 2002-10-30 06:40:58 +00:00