Marcus Boerger
d1a6deb785
- Fixed bug #26304 (Unexpected data loss when opening dba file).
2003-12-13 14:50:06 +00:00
foobar
bade2e7df6
Remove unnecessary #include
2003-12-07 16:56:51 +00:00
Marcus Boerger
923d0bcfb4
revert here too
2003-12-07 15:59:13 +00:00
Marcus Boerger
9c8678eb7b
Fix enabling shared builds.
2003-12-07 00:21:47 +00:00
Edin Kadribasic
a05a42c8ea
Added dba to the new win32 build. Works both as shared
...
and built-in extension on windows.
2003-12-06 23:39:07 +00:00
Marcus Boerger
2bed6c2b8a
Proto fixes (Friedhelm Betz <holliwell|gmx.net>)
2003-11-13 19:08:41 +00:00
Marcus Boerger
a18bd05f32
Bugfix #25794 : Cannot open existing hash db3 file with write
2003-11-13 08:59:02 +00:00
Marcus Boerger
4d752bd78e
Pass eof
2003-11-13 07:53:15 +00:00
Marcus Boerger
daaef88047
Add helper function that splits inifile keys into an array which again
...
can be used in dba_fetch calls.
2003-11-12 21:43:03 +00:00
foobar
db50cd251e
Aligned configure help texts.
2003-10-03 05:24:33 +00:00
Moriyoshi Koizumi
daf7528d90
Alignment fix
2003-10-02 10:47:12 +00:00
foobar
c952ea0bb3
- Fix win32 debug build
2003-08-31 16:28:19 +00:00
Ilia Alshanetsky
4f2e9bbc45
Fixed format error.
2003-08-28 17:56:41 +00:00
Marcus Boerger
ddf4ad5744
Fix warning
2003-08-17 17:14:11 +00:00
foobar
1ba3e3a6dc
MFB
2003-08-15 18:47:23 +00:00
Ilia Alshanetsky
4d98e9ec97
Finalize the closing process of persistent streams. The current
...
behavior/API is as follows:
1) To close a persistent use php_stream_pclose(), it will close the stream
and remove it from the persistent list.
2) Inside PHP code only explicit fclose() will close persistent streams,
all other actions such as unset() or assigning a value to stream handle
will not.
3) Regular streams can still be closed by either fclose(), unset() or an
assignment of a value to the stream handler.
2003-07-29 18:26:34 +00:00
Marcus Boerger
7f1cf60331
Remove bogus comment (noticed by Zak)
2003-07-16 22:55:02 +00:00
Marcus Boerger
a86eff2162
Fix handling of empty settings
2003-07-16 20:53:17 +00:00
Marcus Boerger
bc16d962a6
Fix open mode (noticed by FutureQuest, Inc.)
2003-07-03 11:17:34 +00:00
Marcus Boerger
1cdc2d48b6
Fix possible SEGV
2003-06-22 15:53:50 +00:00
Marcus Boerger
a332df50fb
Don't copy the filename when it is not needed
2003-06-21 18:43:25 +00:00
Marcus Boerger
7eb9fc251a
Store the absolute path of the database file and use that in the external library
2003-06-21 18:17:20 +00:00
Marcus Boerger
814c0be675
When persistent then we may use threads
2003-06-21 18:16:38 +00:00
Marcus Boerger
ba3e315b65
Allow the extension to reside elsewhere
2003-06-19 15:48:06 +00:00
Marcus Boerger
44401fa0e7
to be precise
2003-06-19 11:10:14 +00:00
Edin Kadribasic
5a3c09c440
Fixed win32 build
2003-06-16 09:11:31 +00:00
foobar
f07f3267e2
- Fixed some /usr/lib leaks into LIBS/LDFLAGS which later on made other
...
configure checks fail (old libs in /usr/lib, new ones in /opt/lib :)
2003-06-14 14:22:13 +00:00
Andrey Hristov
ab5b9b91d3
proto fixes
2003-06-13 14:59:01 +00:00
Marcus Boerger
48cc4a7be6
Bugfix #2397 : dba_open locking error with db3
2003-06-12 19:53:40 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
Marcus Boerger
a13edb62d5
Fix builddir entry
2003-05-29 14:01:21 +00:00
Marcus Boerger
afc3b8b6dc
MFB (these parts were missing)
2003-05-29 12:33:19 +00:00
Marcus Boerger
323eedd1b2
Fix build
2003-05-21 00:14:16 +00:00
Marcus Boerger
e9c10acc76
Fix test (ssen by Dan Torop)
2003-05-20 22:28:10 +00:00
Marcus Boerger
1778caad0c
Fix protos
2003-05-19 22:52:27 +00:00
Marcus Boerger
80aa82e24b
Enable bundled submodules when enabling module
2003-05-18 12:36:24 +00:00
Marcus Boerger
7ddb7f15d4
Enable db<n> builds configured with --with-uniquename
2003-05-14 06:22:35 +00:00
Marcus Boerger
8dffa02661
Fix this test
2003-05-13 20:37:54 +00:00
Marcus Boerger
34a36c466e
#i shouldn't do test-fiddling after 3o-clock
2003-05-06 09:33:40 +00:00
Marcus Boerger
6360bda763
Find a better solution for the tests
2003-05-06 01:23:35 +00:00
Marcus Boerger
8a5ba51ac8
MFB: safe_emalloc()
2003-04-24 20:54:43 +00:00
Marcus Boerger
da540a4d3b
Fixed Bug #23188 CDB databases created with 'c' mode do not work.
2003-04-14 21:50:48 +00:00
Marcus Boerger
268ffda27d
Reenable dba_popen()
2003-04-13 19:50:28 +00:00
Sascha Schumann
1879b27fc6
fix VPATH builds
2003-04-01 10:16:12 +00:00
Marcus Boerger
f14a65c7b9
CS
2003-03-20 19:54:22 +00:00
Marcus Boerger
f5a7a1c094
Use stream locking support
...
# needs more testing
2003-03-04 23:45:48 +00:00
Marcus Boerger
cf7101d354
Support all possible configurations and simplify includes
2003-03-04 20:31:42 +00:00
Marcus Boerger
238abf8c7f
fix dba by fixing key_len retrieval
2003-03-04 19:56:35 +00:00
Wez Furlong
fd61f69077
Another big commit (tm).
...
Main Changes:
- Implement a socket transport layer for use by all code that needs to open
some kind of "special" socket for network or IPC.
- Extensions can register (and override) transports.
- Implement ftruncate() on streams via the ioctl-alike option interface.
- Implement mmap() on streams via the ioctl-alike option interface.
- Implement generic crypto API via the ioctl-alike option interface.
(currently only supports OpenSSL, but could support other SSL toolkits,
and other crypto transport protocols).
Impact:
- tcp sockets can be overloaded by the openssl capable sockets at runtime,
removing the link-time requirement for ssl:// and https:// sockets and
streams.
- checking stream types using PHP_STREAM_IS_SOCKET is deprecated, since
there are now a range of possible socket-type streams.
Working towards:
- socket servers using the new transport layer
- mmap support under win32
- Cleaner code.
# I will be updating the win32 build to add the new files shortly
# after this commit.
2003-02-27 17:43:38 +00:00
Marcus Boerger
d737741329
allow keys as array(group, name) for handler inifile
2003-02-26 22:07:50 +00:00
Marcus Boerger
ce04e8a91a
ws
2003-02-26 22:05:32 +00:00
Marcus Boerger
cdcb86a4da
make it faster
2003-02-26 22:03:55 +00:00
Marcus Boerger
6fd9c32346
if skip param of dba_fetch is -1 stop do not restart search after last element
2003-02-26 22:03:00 +00:00
Marcus Boerger
fbe7e1d977
Dropped optimization
...
# It is impossible to combine skip=-1 searches with firstkey/nextkey results
2003-02-22 23:47:09 +00:00
Marcus Boerger
c0e9bd0830
INI files are case insensitive
2003-02-22 20:49:07 +00:00
Marcus Boerger
fef5b7c3a1
Remove testcode
2003-02-22 17:37:27 +00:00
Marcus Boerger
8ab1924ca3
@Added dba handler inifiles to support ini files. (Marcus)
2003-02-22 17:20:06 +00:00
Marcus Boerger
b8f518a451
- wrong use of sizeof(char)
...
- use define for block size
- a bit faster
2003-02-18 22:19:18 +00:00
Marcus Boerger
7b6fb4b7b3
coding style
2003-02-18 20:49:52 +00:00
Marcus Boerger
3db2b2bc7c
avoiding problems
2003-02-18 20:48:05 +00:00
foobar
83403958ed
break: First one not needed, second missing.
2003-02-09 19:57:50 +00:00
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