dimitr
8bb4e03a7b
Misc.
2006-12-30 11:35:22 +00:00
robocop
d2e510c013
Avoid crashes due to mismatch in msg file (helps mostly while developing).
2006-10-17 06:23:53 +00:00
asfernandes
55ec30965d
REPLACE statement
2006-09-03 01:09:23 +00:00
asfernandes
b7af27215e
Allow usage of domains in PSQL (with TYPE OF syntax)
2006-08-19 02:52:39 +00:00
hvlad
8f55191456
Make blr_blob2 handling in blr printer consistent with other data types
2006-07-31 18:32:48 +00:00
dimitr
e0e0b602be
Updated the BLR printer to handle all FB2 features.
2006-07-31 08:07:21 +00:00
hvlad
ed5d2fe9aa
Fixed error noted by Adriano
2006-07-31 06:33:30 +00:00
asfernandes
273da882bc
Misc
2006-07-31 01:46:52 +00:00
hvlad
75a9c90ad7
Blr printer was not aware of blr_blob2
2006-07-30 20:00:21 +00:00
hvlad
fac53c8177
Added blr_src_info. Error call stack now contains not only
...
procedures\triggers names but line\column numbers also.
Thanks to Eugeney Putilin for idea
2006-07-04 14:44:43 +00:00
robocop
991de0b29e
Make LC_MESSAGES env var work as expected (get only filename) for an alternative messages file held in the INTL dir.
2006-06-08 05:02:34 +00:00
dimitr
7cc12e8489
1) Reworked memory management in SORT. Now we're pools aware there.
...
2) Reworked error handling in SORT and its callers.
3) Replaced DLS+SortMem with the generic TempSpace class.
4) Replaced GDS temp file management with the TempFile class.
5) Various cleanup.
2006-05-31 08:53:00 +00:00
hvlad
701f2cbda4
Global temporary tables implementation
2006-05-21 22:07:35 +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
dimitr
afa0f666b8
Threading cleanup. More to follow.
2006-05-01 04:12:30 +00:00
robocop
c07aa9d25f
Stop complainers related to the argument types of fb_interpret.
2006-04-06 06:32:47 +00:00
robocop
7bf526c096
Misc.
2006-03-08 03:10:48 +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
robocop
3389149564
The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
...
Tenth step: some code was tagged PC_ENGINE but was for SCROLLABLE_CURSORS instead, hence restore it. Also, clean unused data members, obsolete BLR verbs and the like.
2006-02-07 08:08:49 +00:00
robocop
38b063b3de
I misread the logic: it's true (not false) that tells Timestamp to not call the operating system to get the current time. Thanks to D. Sibiryakov.
2006-02-04 02:40:20 +00:00
robocop
97122ee389
Replace jrd_time.h by our timestamp.h, but I left timestamp.h's #includes commented where it *seemed* not necessary.
2006-02-03 08:39:36 +00:00
robocop
8b99699398
Do not lose time getting the accurate timestamp from the operating system if we are going to override it imediately with the user supplied value in isc_encode_date and isc_encode_timestamp. Also, this avoids an exception escaping from the API functions if the system call fails.
2006-02-02 00:03:29 +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
dimitr
cf3ed06d9c
Fixed POSIX builds.
2005-12-28 10:07:54 +00:00
robocop
a44464d73c
Do not use the harcoded c:\Program Files path while possible: it doesn't have to live in the C: partition and it's localized in non-English Windows versions.
2005-12-25 07:43:04 +00:00
robocop
9202047a0f
Solve chicken and egg problem: when we can't locate the config file, we throw an exception but if we try to trap and decode the failure in another place, it tries to know the location of the messages file (to interpret the status vector), which in turn requires to locate the config file. Therefore, we crash mysteriously.
2005-12-25 04:42:13 +00:00
robocop
82ebc3ab64
Fix the non-VMS version of gds__validate_lib_path:
...
We shouldn't modify the result from getenv().
Also, fix some null terminator issues.
2005-12-23 23:11:57 +00:00
robocop
f00fc0ff56
1.- Make "vec" type safe and get rid of several code contortions. Fix some small bugs meanwhile.
...
2.- Put inside PC_ENGINE several data members that belong to that feature.
3.- Put inside PC_ENGINE the code that does cleanup on those unused data members.
2005-12-02 07:35:34 +00:00
dimitr
29f2f43359
Fixed the bug I introduced with my GDS changes.
2005-11-29 11:36:06 +00:00
dimitr
905a2e46f8
Fixed builtin lookups for error messages and SQLCODEs.
...
IMPORTANT!!! You have to rebuild the tree from scratch!
2005-11-24 11:53:55 +00:00
dimitr
2382db581e
Reworked the BLR printer to use Firebird::string as its buffer.
2005-11-24 08:34:16 +00:00
dimitr
c236dc4a73
1. Fixed memory corruption in filters.cpp
...
2. Increased internal buffer in gds.cpp to avoid overflows
3. Made this buffer dynamically allocated to avoid stack corruptions
4. Minor cleanup
2005-11-23 20:18:19 +00:00
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