Sascha Schumann
6dcf9c22b5
properly restart syscalls
2003-07-01 05:29:17 +00:00
Sascha Schumann
a5017f0b4c
Serialize headers for systems with low IOV_MAX (e.g. Solaris)
2003-06-27 18:41:11 +00:00
Sascha Schumann
e5c5c491fb
Simplify/fix logging
2003-06-16 19:11:33 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
Sascha Schumann
ef1263a589
Don't corrupt data during request body handling
2003-06-04 05:28:17 +00:00
Sascha Schumann
4247f4b90e
Don't return CRLF from broken clients
2003-06-04 05:13:59 +00:00
Sascha Schumann
528c495d68
If there is a content body, enable lingering and disable keep alive.
2003-05-16 22:32:22 +00:00
Sascha Schumann
edd6a6449a
Properly timeout post requests
2003-05-15 16:54:37 +00:00
Sascha Schumann
e473374ff3
Don't emit Content-Length in a 304 reply
...
Don't falsely claim HEAD method
Add PHP to HTTP server string
2003-05-15 16:42:43 +00:00
Sascha Schumann
3eab2fb3bd
improve keep alive handling
2003-05-12 01:29:21 +00:00
Sascha Schumann
40dd3617eb
add premium thttpd support
2003-05-12 01:02:08 +00:00
Sascha Schumann
33a10b342e
Improved protection against hostname attacks
2003-05-06 19:17:50 +00:00
Sascha Schumann
bd6ff4ca43
fix typo
2003-05-06 10:15:33 +00:00
Sascha Schumann
4f8aeebf64
improve portability
2003-05-06 10:14:20 +00:00
Sascha Schumann
833d734af1
cleanup
2003-05-01 20:49:42 +00:00
Sascha Schumann
9f4f0cec39
Fix Content-Encoding header lacking CRLF
2003-04-28 22:07:18 +00:00
Sascha Schumann
17f3aca625
Properly update the global httpd_time_now and remove php_makefile from diff
2003-04-21 01:08:23 +00:00
Sascha Schumann
8e165ea050
fix two uninitialized reads
2003-04-16 13:43:23 +00:00
Sascha Schumann
4ff425c157
Nuke all sn?printf's and rely on the optimized httpd_ntoa to
...
convert the IP to a string representation.
2003-04-16 13:37:34 +00:00
Sascha Schumann
cd403e3b51
Merging some Premium thttpd improvements, notably
...
- periodic update of date strings
- caching of Last-Modified values
- use of smart_str'ings for crafting HTTP header (static files)
and inside make_log_entry
- buffered log writing
- httpd_ntoa is about 8 times faster
Overall improvement: Around 50% faster now
2003-04-16 09:20:55 +00:00
Sascha Schumann
fb6c60c46c
some improvements
2003-02-19 10:57:21 +00:00
Sascha Schumann
778378dcc6
include limits.h for portability
2003-02-13 02:30:10 +00:00
Sascha Schumann
6ab6ad12a0
portability work
2003-02-13 02:24:38 +00:00
Sascha Schumann
e3831c2ef5
Add "log to stdout" feature
2003-02-11 00:58:54 +00:00
Sascha Schumann
ba32a619ae
use SUCCESS/FAILURE instead of 0/-1
2003-02-09 21:15:55 +00:00
Sascha Schumann
ebedf060a5
Fix POST handling once and for all. The daemon now never blocks and handles
...
uploads of up to 2GB on 32 bit platforms.
Uploads >16KB are put into a file-backed mmap area.
SG(request_info).content_type got corrupted somewhere. As a workaround,
we provide SAPI with a duplicate of the original string.
2003-01-17 18:53:22 +00:00
Sebastian Bergmann
2c5d4b8c23
Bump year.
2002-12-31 15:59:15 +00:00
Sascha Schumann
95fead0b9f
add missing line
2002-11-29 11:34:08 +00:00
Sascha Schumann
09f463ddae
Add sapi_get_fd() and implement it for the Apache/thttpd SAPIs.
2002-11-26 05:15:55 +00:00
Sascha Schumann
a8136b4dba
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.
2002-11-10 15:21:13 +00:00
Sascha Schumann
f2f443f066
s/PHP_API/PHP_API_VERSION/
2002-11-08 13:29:32 +00:00
Sascha Schumann
8d25447f30
let this source file compile with php 4.2.x
2002-11-07 11:56:02 +00:00
Sascha Schumann
eb0141913c
Add two missing entries
2002-11-07 11:38:03 +00:00
Sascha Schumann
10a861f93c
- 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
2002-11-06 17:31:03 +00:00
Sascha Schumann
082d9c4936
Simplify handler dispatching mechanism
2002-11-01 11:51:35 +00:00
Sascha Schumann
1a7a5b3982
Add missing return statement.
2002-11-01 11:44:50 +00:00
Sascha Schumann
1d2eb7c485
update
2002-11-01 11:41:08 +00:00
Sascha Schumann
7d504b230c
improve host header checking, only affects systems which have virtual
...
hosting enabled
2002-11-01 11:40:26 +00:00
Sascha Schumann
55879b3543
first step towards asynchronous content body processing
2002-10-30 19:09:49 +00:00
Sascha Schumann
ed15104099
s/-//
2002-10-26 22:27:45 +00:00
Sascha Schumann
40b93fa16d
add phppat/phpspat configuration file support and
...
fix some indention
2002-10-26 22:22:34 +00:00
Sascha Schumann
e077e0debe
update and extend
2002-10-26 22:22:07 +00:00
Sascha Schumann
7a0850a344
Fix build and .phps support
2002-10-26 21:06:10 +00:00
Sascha Schumann
01bdc2e369
experimental .phps support
2002-10-26 20:55:41 +00:00
Sascha Schumann
c46ed2114e
not sure what this async_send is doing in here, so relieve it from its duty.
2002-10-26 20:45:35 +00:00
Sascha Schumann
7b3bea0b41
Donate "Fast Accept Loop" from Premium thttpd which speeds up processing
...
new connections when the connection table contains lots of entries.
2002-10-26 19:41:27 +00:00
Sascha Schumann
467fea036a
Donate "Periodic Connection Expiring" from Premium thttpd, because
...
it is simple and gives a +40% improvement in terms of requests/s
when serving static files.
2002-10-26 18:14:45 +00:00
Sascha Schumann
b9135d74e9
some system headers (irix) define sa_len
...
prefix sa_len with x
2002-10-26 15:47:22 +00:00
Sascha Schumann
0a80a78670
thttpd initializes contentlength to -1, so we need to transfer that to 0
...
for SAPI/PHP. Otherwise, SAPI will try to read (unsigned long) -1 bytes
from the connection.
2002-10-25 01:10:50 +00:00
Sascha Schumann
47a1421d89
Redo the patch on Linux, the cygwin diff seems to be a bit broken.
2002-10-13 11:54:08 +00:00