Marcus Boerger [Sun, 10 Nov 2002 16:03:17 +0000 (16:03 +0000)]
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)
Sascha Schumann [Sun, 10 Nov 2002 15:21:13 +0000 (15:21 +0000)]
Defend against pipelined requests on persistent connections as used by
IRCG. These could cause thttpd to start a second request in the same
connection context, and thereby causing real damage.
Mozilla 1.0.1 is buggy in that context: When HTTP/1.1 pipelining is
enabled (defaults to off), it will send any number of requests over
a persistent connection (which is fine), even after it has received
a "Connection: close" header field in a subsequent response header.
This blatantly violates RFC 2616, section 8.1.2. Because it cannot
receive any response on the dead connection, the download manager
pops up and tries to download a file (which never arrives).
Also, we don't try to send a 400 message anymore, if the connection
dies.
Ilia Alshanetsky [Sun, 10 Nov 2002 05:14:26 +0000 (05:14 +0000)]
Fixed a bug that in many situations would cause open_basedir restriction to
be bypassed. Most notable exception, is the inclusion of files via include(),
with a partial path.
Move SWC (compressed swf) check into a separate test because this check
requires zlib. This separation allows us to skip the test if zlib is
not available and not fail.
Marcus Boerger [Fri, 8 Nov 2002 01:03:53 +0000 (01:03 +0000)]
-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
This makes the output of the tests consistent on 32bit and 64 bit platforms.
The old test relied on the 32 bit behaviour, which caused them to always fail
on 64 bit platforms.
Fixed a crash in image_type_to_mime_type(), when a non integer value is
passed to the function.
Fixed Width/Height detection of bmp files on big endian systems.
Added bit depth detection for bmp files.
Added additional tests to parse_url() test suit, corrected the output of 2
existing tests, which were affected by a bug fixed in latest update to
parse_url() source code.
Instead of checking whether realpath exists based on OS. Use the
HAVE_REALPATH define, which is set if realpath() is avaliable. This patch
also resolves bug #18868.
Sascha Schumann [Wed, 6 Nov 2002 17:31:03 +0000 (17:31 +0000)]
- use TCP_DEFER_ACCEPT
- don't timeout connections which are managed by IRCG
- don't generate invalid HTTP replies, if the client did not send a
request line yet
Marcus Boerger [Wed, 6 Nov 2002 11:18:00 +0000 (11:18 +0000)]
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.
Marcus Boerger [Wed, 6 Nov 2002 09:17:51 +0000 (09:17 +0000)]
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.
Marcus Boerger [Wed, 6 Nov 2002 04:16:18 +0000 (04:16 +0000)]
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.