Commit Graph

288 Commits

Author SHA1 Message Date
Marcus Boerger
895c27d3fc Change DBM detection order 2003-02-01 22:19:04 +00:00
Marcus Boerger
0319e63775 - unify configure mechanisms (include file handling)
- fix dbm
- allow dbm to be based on gdbm
2003-02-01 18:59:59 +00:00
Marcus Boerger
0629bdb061 Shared dba requires at least db-3.3 2003-01-31 20:06:44 +00:00
Marcus Boerger
037986db20 Fix proto 2003-01-31 19:12:23 +00:00
Marcus Boerger
302f97abbc Revert this part, the new one adds more problems than it solves. 2003-01-30 21:36:05 +00:00
Marcus Boerger
f2ff4678cd Allow to link against chosen modules correctly 2003-01-30 18:28:42 +00:00
foobar
41d6e9af8d Fix configure. (typo?) 2003-01-28 10:55:36 +00:00
Marcus Boerger
1ab64d2b96 - fix this: els is optional but may not be empty 2003-01-28 06:27:01 +00:00
Marcus Boerger
2b5a5ca669 - fix "--without-flatfile"
- simplify Berkley DB verison check
2003-01-28 00:10:05 +00:00
Marcus Boerger
564788b6f5 The builtin version was always used even if configured otherwise. 2003-01-25 19:46:58 +00:00
Ilia Alshanetsky
a7b91019e9 Removed pointless memory allocation checks. 2003-01-18 19:49:28 +00:00
Edin Kadribasic
59b37a5ce4 Fixed win32 build. 2003-01-06 01:08:59 +00:00
Sebastian Bergmann
b506f5c8f8 Bump year. 2002-12-31 16:08:15 +00:00
Marcus Boerger
67f0a6f6c0 testing default handler should be a separate test 2002-12-30 19:20:11 +00:00
Marcus Boerger
aa8e5cdde7 -disallow using db-<n> with libraries of different major versions
-disallow using db-4.1 with patch level < 25
-fix db-4.1
-added undocumented DB_FCNTL_LOCKING flag for version 3 and 4
# wow the sleepycat guys answered *very* fast
2002-12-30 17:42:55 +00:00
Marcus Boerger
32dda8b0cb ws 2002-12-30 13:09:03 +00:00
Marcus Boerger
4d2f7207c0 Add info function to handlers and return handler info when dba_handlers is
called with optional parameter full_info set true.
2002-12-30 13:07:30 +00:00
Marcus Boerger
a213c71735 2nd part of the patch 2002-12-30 11:43:18 +00:00
Marcus Boerger
4b9e8fc899 -better parameter names for DBA_HND macros
-remove unnecessary notice
2002-12-30 11:32:37 +00:00
Derick Rethans
e76d0043da - Align mssql comment and clarify DBA handler selection 2002-12-30 08:55:21 +00:00
Marcus Boerger
c69d034a87 Added support for db3/db4 error handling/information 2002-12-29 15:32:38 +00:00
Marcus Boerger
9b22813c4d Add a default handler that makes handler parameter to open functions
optional.
@Improved dba extension (Marcus)
@-Made handler parameter of dba_(p)open() optional.
@-Added php.ini option 'dba.default_handler' to specify a default handler.
2002-12-29 15:31:00 +00:00
Ilia Alshanetsky
22a2636d9d Made DBA tests not dependant on error reporting settings. 2002-12-27 04:46:40 +00:00
Marcus Boerger
4041d4faed Add missing test for db4 handler 2002-12-26 19:55:06 +00:00
Andrei Zmievski
ddea2a190f Alias dba_popen() to dba_open() until persistent STDIO streams are
implemented.
2002-12-21 01:09:27 +00:00
Marcus Boerger
efd314e767 -Fix memory handling of persistent dba connections.
-Update tests.
# cdb and flatfile still FAIL for dba_popen since the known streams problem
2002-12-20 17:47:58 +00:00
Andrei Zmievski
c45f76112f At least this problem exposed some leaks.. 2002-12-20 16:45:34 +00:00
Marcus Boerger
e0c983a013 Warnings and Notices when lock modifiers for dba_(p)open are used wrong.
This finally closes bug #20828 (and i hope it must not be reopened)
2002-12-11 10:37:38 +00:00
Marcus Boerger
a6e9674bfd add missing comment 2002-12-10 22:51:09 +00:00
Marcus Boerger
b94e0d9eac LOCK_EX is not allowed in read mode -> try using existing .lck file in read
only mode only when in read mode.
2002-12-10 22:49:33 +00:00
Marcus Boerger
17117063ce -remove second attempt to close lock file
-default to lock on db file instead on .lck file.
-try to use existing .lck file and only create it on failure (allows ro access)
2002-12-10 22:02:52 +00:00
Marcus Boerger
ba534ac7c8 Added open modifier '-' to skip/ignore locking. See bug #20828, #20858 2002-12-09 17:54:13 +00:00
Marcus Boerger
579e3ca96b Add Berkeley db4 support 2002-11-26 12:05:59 +00:00
Marcus Boerger
197fd585bd -Disallow combining db2 with db3 which are conflicting.
-Stop searching for headers and libraries when found.
-Check version for Berkeley DB library headers.
2002-11-26 12:00:25 +00:00
Marcus Boerger
1827a58de0 Allow db4.0 & db4.1 here. Patch by Ralf Engelschall (rse@engelschall.com) 2002-11-23 21:11:12 +00:00
Marcus Boerger
e7d20a0422 Make magic_quotes_runtime work bidirectional for dba 2002-11-22 15:47:48 +00:00
Edin Kadribasic
ff55850562 No need to declare functions used internally by DBA as PHPAPI. This
fixes windows build.
2002-11-19 01:06:42 +00:00
Marcus Boerger
dbf8593b5b When --enable-dba is used then include builtin modules unless --without-xxx
is not used.
2002-11-15 21:28:42 +00:00
Marcus Boerger
93769053cc Use flatfile if available.
# This way we are using the internal library which we know about most.
2002-11-15 16:11:51 +00:00
Marcus Boerger
7d03dc004e Show which handler was used in the test 2002-11-15 15:58:09 +00:00
Marcus Boerger
dbb95f338e file() is affected by magic_quotes_runtime 2002-11-14 21:15:31 +00:00
Marcus Boerger
a14bc7685d Add magic_quotes_runtime support 2002-11-14 21:09:41 +00:00
Marcus Boerger
5ec9375760 Fix locking behaviour: On some systems read during write is permitted but
most libraries are not capable of that. GDBM is system dependant so there
we only test  that we do not deadlock.
2002-11-14 14:32:39 +00:00
Marcus Boerger
244d5d1c11 must be unsigned
# maybe i will change this to size_t for 64bit systems but i do not have the
# time now and i have problems building php on a sun.
2002-11-13 16:30:50 +00:00
Marcus Boerger
4dd5fc67b7 -use size_t
-recheckin header as unix file
2002-11-13 16:28:44 +00:00
Edin Kadribasic
ae51b7f4db Allow use of Berkeley db version 3.1 as found on many RedHat systems. 2002-11-13 13:12:26 +00:00
Edin Kadribasic
af436aa873 Added support for bundled flatfile, cdb and cdb_make handlers
to win32 build of the dba extension.
2002-11-13 12:12:44 +00:00
Marcus Boerger
759e4b10e8 Use php_flock instead of flock 2002-11-11 20:53:41 +00:00
Marcus Boerger
c4e57b182e -fix file open mode when modifier 'd' is used
#Add my name to authors
2002-11-11 12:04:12 +00:00
Marcus Boerger
dcc7fc16b6 -Precondiftion: no open files
-do not show warning from dba_open call for read during write
# Interesting is that on some systems read during write is permitted...
# I will change the tests as soon as i find a way to have this equal on all
# systems
2002-11-11 12:00:58 +00:00
Marcus Boerger
1cb7dc2166 Add missing flush 2002-11-11 11:57:25 +00:00
Marcus Boerger
b8f3b83511 Emit a warning when open mode modifier t is used wrong. 2002-11-10 23:07:35 +00:00
Marcus Boerger
4f636c6b3b Add $lock_flag which allows to change lock behaviour for both 'l' and 'd'
Remember gdbm has its own locking so 't' does not work here - maybe a
warning is needed for that, too.
2002-11-10 22:56:29 +00:00
Marcus Boerger
89b586d415 Use 'l' to open database file with locking on .lck file. 2002-11-10 22:07:17 +00:00
Marcus Boerger
705a4e251c -Centralise open stream for builtin modules that use streams
-If locks work on database file then only one stream open call is used
2002-11-10 17:58:46 +00:00
Marcus Boerger
224e530ee1 finish work on locking
-all but gdbm do internal locking now since only gdbm has internal locking
-you can force locking on database or lck file (with gdbm this makes no
 sense so a notice is generated)
2002-11-10 16:03:17 +00:00
Marcus Boerger
95018fc5c0 -lock support moved from dba_flatfile.c to dba.c
-flatfile, cdb, cdb_make use locking now
#locking is blocking per default use 'rt', 'wt', ct' or 'nt' for non blocking alias
#test access to a database file.
#locking uses flock() which will be emulated or warned if that is not eally
#possible in ext/standard/flock_compat.c
2002-11-08 01:03:53 +00:00
Marcus Boerger
1a4c1eb8a9 not needed anywhere here 2002-11-07 23:09:41 +00:00
Marcus Boerger
39876b881b -rename anything to flatfile_xxx/FLATFILE_xxx
-fix update function
-add warnings for update function
2002-11-07 23:03:16 +00:00
Marcus Boerger
2a2a41b5f2 add test to see if insert fails when key already exists 2002-11-07 14:18:42 +00:00
Marcus Boerger
927033c616 remove debug output and use php_error_docref instead 2002-11-07 13:00:37 +00:00
Sascha Schumann
3037b35b31 emalloc never returns 0, so we can simplify the code paths.
also replace ecalloc with emalloc+memset, so that the latter can be inlined.
2002-11-06 17:59:03 +00:00
Marcus Boerger
caa194d47e -convert from dos to unix file
-disallow cdb_make
2002-11-06 11:59:14 +00:00
Marcus Boerger
c7b7cf17c2 check whether a written databse can be appended and if read during write
is permitted
#i use ksort for the result here since some dbm libraries sort their result
#but that is nothing to test here.
2002-11-06 11:18:00 +00:00
Marcus Boerger
7fb5e192fb fix locks and reading
#i will extend the tests to guard on such failures
2002-11-06 10:43:41 +00:00
Marcus Boerger
678829add6 There shall never be an external library for this (hopefully). 2002-11-06 10:08:38 +00:00
Marcus Boerger
88af7e9897 Use the the name 'flatfile' correctly so the handler support can be built now.
#I do not like the lock solution since a crashed php would leave the *lck
#file locked now.
2002-11-06 09:17:51 +00:00
Marcus Boerger
4be50925ad move newly introduced flatfile support from dbm to new flatfile handler
# do not make the same mistake as with ext/db where it was not clear
# which format was used.
2002-11-06 04:16:18 +00:00
Marcus Boerger
5d9563df56 correct file open modes 2002-11-06 02:21:49 +00:00
Marcus Boerger
31b6a5cebf #add myself 2002-11-06 01:53:50 +00:00
Marcus Boerger
f0acf84dc7 Incorporate rewritten version of dbm from db extension.
# currently locks are missing :-(
2002-11-06 01:47:06 +00:00
Marcus Boerger
b3ab4ece8d correct errors 2002-11-05 19:38:06 +00:00
Marcus Boerger
77858f7fcd -use of emalloc functions
-info was not initialised fulle due to memset parameters
 now that the whole structure is initialised we can stop putting 0 in it.
2002-11-05 15:01:20 +00:00
Marcus Boerger
177b24a44e Why did open fail? 2002-11-05 14:46:36 +00:00
Marcus Boerger
30e916d5cd added missing compiler define 2002-11-05 12:03:01 +00:00
Marcus Boerger
2db35e91ea no memory no members 2002-11-05 11:22:48 +00:00
Marcus Boerger
5be5c7f14f incorporate cdb-0.75 as suggested by D. J. Bernstein
#dba now supports cdb_make
2002-11-04 17:53:04 +00:00
Marcus Boerger
02c903b25e use ecmalloc/efree functions instead of (c|m)alloc/free 2002-11-04 13:39:17 +00:00
Marcus Boerger
9d0c4b7bc5 passing around TSRM
#going to add CDB_MAKE support
2002-11-04 12:27:13 +00:00
Marcus Boerger
529fbfffc4 missing 2002-11-03 20:17:00 +00:00
Marcus Boerger
068d9d4786 no c++ comments 2002-11-03 16:50:08 +00:00
Marcus Boerger
aaf5911b16 cdb now allows multiple key-value pairs with same key 2002-11-03 16:43:07 +00:00
Marcus Boerger
ea7b5d41d3 cdb interface is currently readonly 2002-11-03 15:22:32 +00:00
Marcus Boerger
a54cf8b94a cdb interface is currently readonly 2002-11-03 15:11:42 +00:00
Marcus Boerger
6668f61ecb -fixed
-use *e*malloc
2002-11-03 15:09:49 +00:00
Marcus Boerger
f7bd4ce0ba Add testcase for every single handler
# db2 fails for me with SIGSEGV
2002-11-01 14:23:23 +00:00
Marcus Boerger
d50e62cbac Always show handler used 2002-11-01 14:21:36 +00:00
Marcus Boerger
5ab8fb4df1 test.dbm* -> test0.dbm* 2002-11-01 14:20:31 +00:00
Marcus Boerger
a5968cf369 php_error -> php_error_docref 2002-11-01 14:15:24 +00:00
Marcus Boerger
5a8ed1e734 New naming scheme 2002-10-25 11:09:01 +00:00
Marcus Boerger
63cffd7eae Implemented dba_list() that returns an array rsrcid=>filename and a test. 2002-10-25 10:06:35 +00:00
Marcus Boerger
a707e77a1b Added some tests for dba extension 2002-10-25 09:42:29 +00:00
Marcus Boerger
82b96d99f3 implemented dba_handlers()
@Added dba_handlers() that lists all installed handlers in an array. (marcus)
2002-10-24 20:43:03 +00:00
Sascha Schumann
d964e73160 Add support for cdb-0.75
The install_cdb.sh script fills the gap of installing header files and
creating a cdb library which programs can link against.
2002-09-19 04:18:20 +00:00
Sander Roobol
1715acfdc4 Fix configure 2002-09-11 16:17:33 +00:00
Dan Kalowsky
6fe296aa69 Patch for Bug #19341 submitted by list@firehawksystems.com 2002-09-11 15:05:06 +00:00
foobar
135a1c64c4 Made this extension to use the resource stuff 2002-08-23 22:24:02 +00:00
Derick Rethans
f57306cdd9 Unify error messages 2002-06-26 07:54:00 +00:00
Derick Rethans
c0c9279c0a - MFH: Make DBA compile as a shared module again 2002-04-18 12:30:18 +00:00
Sascha Schumann
297ee300de ws changes 2002-04-10 12:22:36 +00:00
Sascha Schumann
dc56d2d050 Replace all memsets with variable initializations
Change flow of code in functions to end in the "positive" branch.

Changes verified using the original php3 dba tests.
2002-04-10 12:16:31 +00:00
Sascha Schumann
1eb8ee6f6d too quick. full speed back. 2002-04-10 11:12:19 +00:00
Sascha Schumann
1ed150172a Please test patches which are merged into the release branch.
db2 has a standard UNIX API which in turn means that
it returns non-zero in error conditions.
2002-04-10 11:10:17 +00:00
Derick Rethans
cbed0567aa - Fix wrong logic (Thanks to Alan for noticing it) 2002-04-08 06:36:03 +00:00
jim winstead
d3400b2b5f the 'setup' script was removed more than two years ago.
these can be safely removed from the 4.2 branch, too.
2002-03-16 00:21:40 +00:00
Stig Bakken
2e597b8dc8 * fix for db3 from ports on freebsd 2002-03-15 11:26:47 +00:00
Sascha Schumann
5cba3a99c2 extension converted automatically to PHP_NEW_EXTENSION. Manually confirmed 2002-03-12 16:44:00 +00:00
Sebastian Bergmann
90613d2282 Maintain headers. 2002-02-28 08:29:35 +00:00
Gavin Sherry
0a8722a0ac My bad. Left some stray debugging code in previous commit. 2002-01-12 07:38:35 +00:00
Gavin Sherry
e8baeb304a See the update to dba_db3.c 2002-01-12 07:23:35 +00:00
Gavin Sherry
8f30e5f619 This fixes the notorious "mode 'c' fails" bug (see bugs - 10380, 10798, 11732). The bug originates from the fact that mode "c" for db3 sets 'type' to DB_UNKNOWN and mode DB_CREATE when the database already exists. The underlying library raises an error at this logical discrepancy: obviously one cannot create a database of unknown type. 2002-01-12 07:22:27 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
foobar
f1397d5339 Unified the configure messages. 2001-11-30 19:00:13 +00:00
Stig Bakken
689252082c * zend_module_entry change: apino, debug and zts are moved first,
see README.EXTENSIONS file for upgrade help.
@Introduced extension version numbers (Stig)
2001-10-11 23:33:59 +00:00
Jeroen van Wolffelaar
6cfba2a3ea 2nd phase in back-substitution those macro's
I've got pretty much everything now...
2001-09-25 22:49:04 +00:00
Derick Rethans
78747bd2df - Don't wrap lines... this is annoying while coding. 2001-09-09 13:29:31 +00:00
foobar
442669055b Another TSRMLS_FETCH() nuke. 2001-08-14 05:44:33 +00:00
Zeev Suraski
f6f6c4d7e6 Whitespace 2001-08-11 16:39:07 +00:00
foobar
84042cd9f1 Another TSRM fix. 2001-08-06 12:15:05 +00:00
Zeev Suraski
1159c84ab7 - TSRMLS_FETCH work
- whitespace fixes
2001-08-05 01:43:02 +00:00
Zeev Suraski
aa1772ca72 More TSRMLS_FETCH annihilation 2001-07-31 05:44:11 +00:00
foobar
5884ff3412 let this be more userfriendly. 2001-06-28 15:16:28 +00:00
Sebastian Bergmann
d926e84e5f Change copyright note. 2001-06-19 21:25:53 +00:00
Rasmus Lerdorf
81e2cf03ac Fix folding and clean up some extensions 2001-06-06 13:06:12 +00:00
Rasmus Lerdorf
25c3a3a39d vim-6 does folding - clean up a bunch of missing folding tags plus
some misguided RINIT and RSHUTDOWN calls in a few fringe extensions
2001-06-05 13:12:10 +00:00
Stig Bakken
1beda9ee1e * include "config.h" if HAVE_CONFIG_H is defined (for standalone dso build) 2001-05-24 10:07:29 +00:00
Martin Kraemer
c34896aba8 Allow for DB3 to reside in /usr/local/include/db3/ and -ldb3 2001-05-17 15:27:12 +00:00
Sascha Schumann
9982ff568a Nuke some unneccessary quotes 2001-05-12 10:33:52 +00:00
Sascha Schumann
cd30f5a6eb Rename some custom macros from AC_* to PHP_* 2001-05-12 09:26:47 +00:00
Andi Gutmans
4c823e8a89 - Change macros from V_ to VCWD_ because of AIX name clash 2001-04-30 12:45:02 +00:00
foobar
8a26918ed1 Renamed the AC_ prefixed macros defined in acinclude.m4 to PHP_* prefixes.
# Heads up people! I tested this before committing but you never know..
2001-03-27 20:35:04 +00:00
Andi Gutmans
9fbd0a24ba - How did CVS let me commit this? Probably it confused with the branch
merge
2000-12-16 21:01:21 +00:00
Andi Gutmans
8518010945 - In PHP we're supposed to only use MAXPATHLEN (defined in php.h) 2000-12-16 20:56:44 +00:00
Andi Gutmans
86a1cace27 - Make all places use MAXPATHLEN in the same way. It includes the
terminating NULL.
2000-12-16 20:52:43 +00:00
Sascha Schumann
e052f9f575 Handle the case of no-handlers properly and make handlers a proper C "string". 2000-12-04 10:22:46 +00:00
Sascha Schumann
8476f5b29e Please avoid potential buffer overflows in new code. If you deal
with strings, consider storing the string length along with the string
data. That will make your life easier.
2000-12-01 12:29:29 +00:00
foobar
744f1a34ef Beautifying of phpinfo(). 2000-12-01 01:25:36 +00:00
Sascha Schumann
e937eeb2e5 Run through conv_z_macros 2000-11-22 21:47:15 +00:00
Hartmut Holzgraefe
1f6878e912 2nd step towards auto-credits 2000-11-20 10:33:33 +00:00
Daniel Beulshausen
6f0e47f690 it won't work otherwise
# http://support.microsoft.com/support/kb/articles/Q115/8/57.asp
2000-10-26 18:51:12 +00:00
Daniel Beulshausen
4aab269181 added dba extension for win32, currently the dsp is
only configured with db3, adding other configurations
shouldn't be hard
2000-10-26 18:29:10 +00:00
Andrei Zmievski
26f5fe6375 Fix dba after resources patch. 2000-10-26 17:38:01 +00:00
Andrei Zmievski
f1dcb32c9f Use zend_register_list_destructors_ex() instead. 2000-10-25 17:44:02 +00:00
Rasmus Lerdorf
04f0f0b12c Gremlins? 2000-10-21 12:03:09 +00:00
foobar
c663980808 Now checks that the library really exists even if path is specified as /usr
PR: 7358
2000-10-21 00:35:10 +00:00
Andrei Zmievski
7b4983c8f8 Mega-patch to get better resource information for modules.
* Fixed a bug in zend_rsrc_list_get_rsrc_type()
  * Switched register_list_destructors() to use
    zend_register_list_destructors_ex() instead
  * Updated all relevant modules to provide the resource type name
    to register_list_destructors() call
  * Updated var_dump() to output resource type name instead of number

@- Made resource type names visible, e.g. var_dump() and
@  get_resource_type() display "file" for file resources. (Andrei)
2000-10-20 18:25:16 +00:00
Egon Schmid
28f38ea4fe Fixed protos. 2000-07-13 18:44:57 +00:00
Sascha Schumann
e8101d4f7b Unify use of my email address 2000-07-10 10:09:15 +00:00
Sascha Schumann
cd754d7825 Rename macros which begin with underscore to appropiate macros. The general
rule is:

	macro_name=`echo $filename|tr a-z A-Z|sed 's/\./_/'`
2000-07-03 00:41:19 +00:00
Sascha Schumann
16017f6d78 Change header protection macros to conform to standard.
Draft 3 of IEEE 1003.1 200x, "2.2 The Compilation Environment"

  All identifiers that begin with an underscore and either an uppercase
  letter or another underscore are always reserved for any use by the
  implementation.
2000-07-02 23:46:51 +00:00