Commit Graph

70 Commits

Author SHA1 Message Date
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
625e7b202b Use generic getnameinfo for address-to-name translation, if available.
This adds support for IPv6 addresses.
2002-09-23 00:49:12 +00:00
Zeev Suraski
76312b4508 another startup initialization fix - only ISAPI and CGI SAPI's tested,
minor compile buglets might occur in other SAPIs, but should be trivial
to fix...
2002-09-18 21:57:42 +00:00
Sascha Schumann
fa3d840cd1 integrate the public keep-alive patch
the patch did not handle pipeling at all, so that some code had to be added
from Premium thttpd

persistent connections are supported, if a script sets the Content-Length
header
2002-07-14 18:01:08 +00:00
Sascha Schumann
b4c28fba7f thttpd blocks in rare circumstances where it cannot write out a small HTTP
response (happened at customer sites).  The response is now written out
using the standard state machine.

the buffer which is handed to thttpd by php is now simply dealt with as if
it were a thttpd generated response (avoids code duplication).
2002-07-14 13:48:46 +00:00
Sascha Schumann
402cc031cd make the sapi module hand off a buffer to thttpd for final data delivery,
instead of blocking the whole process
2002-07-14 13:10:34 +00:00
Sascha Schumann
d7edeee55f Improve readability of the header send function 2002-05-17 21:22:30 +00:00
Sascha Schumann
5c2d995f0b Provide access to ini settings.
Properly block the thread, if IO is not ready on a fd.
2001-12-13 11:15:56 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Sascha Schumann
1f6f91035e Get rid of post_off-hack which was only suitable for POST data
which fit into the small thttpd read buffer.  Do a small recv
after content-length bytes have been read to accomodate non-conforming
user-agents.
2001-10-27 12:08:10 +00:00
Sascha Schumann
a3368ababa Improved handling of posts 2001-10-27 11:27:39 +00:00
Sascha Schumann
49b44d537f Make the information available whether we are using HTTP/1.1 2001-10-09 15:15:55 +00:00
Sascha Schumann
6db3f409d8 Add QUERY_STRING, HTTP_HOST, HTTP_ACCEPT_LANGUAGE to the script
environment.

Also support setting the INI path from the outside.
2001-09-30 18:23:28 +00:00
Jeroen van Wolffelaar
eb38ca844b Undo Z_ subst for sapi and ext/yaz 2001-09-27 20:01:23 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Sascha Schumann
64c4456cca A CRLF at the end of a line is not so wrong. 2001-08-07 08:35:54 +00:00
Sascha Schumann
61618d4a03 The module usually did not send out Content-Type: text/html.
No major browser seems to care, Opera does though.
2001-08-07 08:34:02 +00:00
Sascha Schumann
8aef193056 more tsrm cleanup 2001-08-05 15:29:47 +00:00
Sascha Schumann
0af7ad15f5 further tsrm cleanup 2001-08-05 14:17:55 +00:00
Sebastian Bergmann
7168c31482 Even more TSRM cleanup. 2001-08-05 13:26:54 +00:00
Sascha Schumann
7263485576 tsrm-related cleanup 2001-08-05 10:32:48 +00:00
Sebastian Bergmann
a70ecedb33 Remove more duplicate TSRMLS_FETCH() calls. 2001-08-05 05:35:06 +00:00
Zeev Suraski
d87cc976e1 Redesigned thread safety mechanism - nua nua 2001-07-28 11:36:37 +00:00
Zeev Suraski
fe6f8712a4 - Get rid of ELS_*(), and use TSRMLS_*() instead.
- Move to the new ts_allocate_id() API
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:16:41 +00:00
Sascha Schumann
7c43206fb8 Remove unneeded variables 2001-07-26 18:10:38 +00:00
Sascha Schumann
36c2353046 Remove accidentially committed line 2001-07-23 02:39:59 +00:00
Sascha Schumann
e6d153f6c4 Support for handling multiple concurrent requests. 2001-06-23 16:27:56 +00:00
Sascha Schumann
e337f07ecd Replace slow strlcpy with a quick memcpy. 2001-05-03 09:04:15 +00:00
Andi Gutmans
8975186810 - Another strncpy() -> strlcpy() change 2001-05-02 22:53:41 +00:00
Sascha Schumann
6602b48071 Fix optimization -- we did not send out custom Response Status Lines. 2001-04-25 06:42:24 +00:00
Sascha Schumann
0fc2ca64bf bytes in the conn structure was renamed to bytes_sent. 2001-04-22 14:22:40 +00:00
Sascha Schumann
5708ddf171 Replace memcpy and sprintf with smart_strs. 2001-03-13 17:14:47 +00:00
Sascha Schumann
de6c69f716 Combine all HTTP headers into a single writev 2001-03-02 17:01:52 +00:00
Andi Gutmans
eb6ba01d1c - Fix copyright notices with 2001 2001-02-26 06:11:02 +00:00
Sascha Schumann
4a32816f9e If we cannot send the header, we don't need to continue with the page. 2001-02-21 20:25:53 +00:00
Sascha Schumann
2403578e35 Include <sys/uio.h>. Apparently, the header cleanup in glibc 2.2.2
caused that file to be included by accident.
2001-02-19 10:28:08 +00:00
Sascha Schumann
8c92cdd897 Save 50% of the syscalls when writing the HTTP header. 2001-02-18 19:03:36 +00:00
Sascha Schumann
ae92ebb92b Especially on FreeBSD it seems to be common that send(2) does not
do a decent job.  We handle that better now.
2001-01-10 13:51:58 +00:00
Sascha Schumann
de847f60ba Propagate the response code/HTTP status code back to thttpd for logging. 2001-01-09 09:01:33 +00:00
Sascha Schumann
7dd166e8c0 Account the number of sent bytes properly 2001-01-09 08:45:05 +00:00
Zeev Suraski
bd0ac7fe14 Many patches. I hope I remember them all:
- Make sapi_module available to external modules (PHPAPI)
- Make the php.ini path reported in phpinfo() always point to
  real full path of the php.ini file
- Optimized the ISAPI module not to read unnecessary server
  variables and read necessary variables at most once.
2001-01-02 22:49:31 +00:00
Sascha Schumann
3fbfbf1f45 Add thttpd-dependent interface for maintaining persistent connections on
an iterative web-server. This will be used by the IRCG extension.
2000-11-13 13:23:56 +00:00
Sascha Schumann
6a149caaed Fix aborted connection handling and stop modifying thttpd data 2000-11-12 21:10:09 +00:00
Sascha Schumann
27a8480028 Add/unify aborted connection handling 2000-10-29 16:01:02 +00:00
Sascha Schumann
6ff371d9f7 Leave initializing of auth_(user|password) to php_handle_auth_data(). 2000-10-27 10:31:10 +00:00
Sascha Schumann
e6dd64e96e Use php_handle_auth_data 2000-10-27 10:19:06 +00:00
Sascha Schumann
0fd6a7ed18 Provide basic auth info to scripts.
Protect shutdown handler from being called multiple times.
2000-10-11 19:40:56 +00:00
Zeev Suraski
91c808ecc4 Restore the headers_only test to the centralized SAPI startup. If necessary, it can
be overriden in the activate() callback.
2000-09-08 14:43:57 +00:00
Sascha Schumann
e97c8ff013 Set SG(request_info).path_translated to the path of the main script. 2000-08-29 15:09:44 +00:00
Sascha Schumann
0b719aa462 Compute absolute path to script 2000-08-27 20:53:10 +00:00