diff options
author | Sascha Schumann <sas@php.net> | 2000-11-13 13:33:12 +0000 |
---|---|---|
committer | Sascha Schumann <sas@php.net> | 2000-11-13 13:33:12 +0000 |
commit | 39f8c9807eb7cbc65aec0d8895ba4fc483dfe2c1 (patch) | |
tree | ced5a454c35612d0673a94f8755938ed380d6c54 /sapi/thttpd/thttpd_patch | |
parent | eea750ebc8981fb6552c0e63cea6013d3cd76a18 (diff) | |
download | php-git-39f8c9807eb7cbc65aec0d8895ba4fc483dfe2c1.tar.gz |
Update patch and add persistent connection handling
Diffstat (limited to 'sapi/thttpd/thttpd_patch')
-rw-r--r-- | sapi/thttpd/thttpd_patch | 53 |
1 files changed, 39 insertions, 14 deletions
diff --git a/sapi/thttpd/thttpd_patch b/sapi/thttpd/thttpd_patch index bfa6a63830..6ad1b65d7b 100644 --- a/sapi/thttpd/thttpd_patch +++ b/sapi/thttpd/thttpd_patch @@ -1,6 +1,6 @@ -diff -ur thttpd-2.19-t/Makefile.in thttpd-2.19/Makefile.in ---- thttpd-2.19-t/Makefile.in Tue Jul 4 18:21:32 2000 -+++ thttpd-2.19/Makefile.in Mon Aug 21 04:58:29 2000 +diff -Nur thttpd-2.20b/Makefile.in thttpd-2.20b-php/Makefile.in +--- thttpd-2.20b/Makefile.in Tue Jul 4 18:21:32 2000 ++++ thttpd-2.20b-php/Makefile.in Mon Nov 13 14:25:48 2000 @@ -46,13 +46,15 @@ # You shouldn't need to edit anything below here. @@ -38,9 +38,9 @@ diff -ur thttpd-2.19-t/Makefile.in thttpd-2.19/Makefile.in tar: @name=`sed -n -e '/SERVER_SOFTWARE/!d' -e 's,.*thttpd/,thttpd-,' -e 's, .*,,p' version.h` ; \ -diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c ---- thttpd-2.19-t/libhttpd.c Fri Jun 23 05:43:40 2000 -+++ thttpd-2.19/libhttpd.c Mon Aug 21 04:59:13 2000 +diff -Nur thttpd-2.20b/libhttpd.c thttpd-2.20b-php/libhttpd.c +--- thttpd-2.20b/libhttpd.c Wed Sep 27 20:13:24 2000 ++++ thttpd-2.20b-php/libhttpd.c Mon Nov 13 14:25:57 2000 @@ -75,6 +75,8 @@ #include "match.h" #include "tdate_parse.h" @@ -50,7 +50,7 @@ diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c #ifndef STDIN_FILENO #define STDIN_FILENO 0 #endif -@@ -224,6 +226,8 @@ +@@ -225,6 +227,8 @@ free( (void*) hs->cwd ); if ( hs->cgi_pattern != (char*) 0 ) free( (void*) hs->cgi_pattern ); @@ -59,7 +59,7 @@ diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c if ( hs->charset != (char*) 0 ) free( (void*) hs->charset ); if ( hs->url_pattern != (char*) 0 ) -@@ -231,6 +235,7 @@ +@@ -232,6 +236,7 @@ if ( hs->local_pattern != (char*) 0 ) free( (void*) hs->local_pattern ); free( (void*) hs ); @@ -67,7 +67,7 @@ diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c } -@@ -291,6 +296,7 @@ +@@ -292,6 +297,7 @@ } hs->port = port; @@ -75,7 +75,7 @@ diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c if ( cgi_pattern == (char*) 0 ) hs->cgi_pattern = (char*) 0; else -@@ -362,6 +368,8 @@ +@@ -363,6 +369,8 @@ return (httpd_server*) 0; } @@ -84,7 +84,18 @@ diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c /* Done initializing. */ if ( hs->binding_hostname == (char*) 0 ) syslog( LOG_INFO, "%s starting on port %d", SERVER_SOFTWARE, hs->port ); -@@ -3302,6 +3310,11 @@ +@@ -2167,7 +2175,9 @@ + void + httpd_close_conn( httpd_conn* hc, struct timeval* nowP ) + { +- if ( hc->file_address != (char*) 0 ) ++ if (hc->file_address == (char *) 1) { ++ thttpd_closed_conn(hc->conn_fd); ++ } else if ( hc->file_address != (char*) 0 ) + { + mmc_unmap( hc->file_address, nowP, &(hc->sb) ); + hc->file_address = (char*) 0; +@@ -3336,6 +3346,11 @@ ( hc->sb.st_mode & S_IXOTH ) && match( hc->hs->cgi_pattern, hc->expnfilename ) ) return cgi( hc ); @@ -96,9 +107,9 @@ diff -ur thttpd-2.19-t/libhttpd.c thttpd-2.19/libhttpd.c /* It's not CGI. If it's executable or there's pathinfo, someone's ** trying to either serve or run a non-CGI file as CGI. Either case -diff -ur thttpd-2.19-t/libhttpd.h thttpd-2.19/libhttpd.h ---- thttpd-2.19-t/libhttpd.h Tue Jun 13 20:48:56 2000 -+++ thttpd-2.19/libhttpd.h Mon Aug 21 04:58:29 2000 +diff -Nur thttpd-2.20b/libhttpd.h thttpd-2.20b-php/libhttpd.h +--- thttpd-2.20b/libhttpd.h Tue Jun 13 20:48:56 2000 ++++ thttpd-2.20b-php/libhttpd.h Mon Nov 13 14:25:48 2000 @@ -69,6 +69,7 @@ char* server_hostname; int port; @@ -107,3 +118,17 @@ diff -ur thttpd-2.19-t/libhttpd.h thttpd-2.19/libhttpd.h char* charset; char* cwd; int listen4_fd, listen6_fd; +diff -Nur thttpd-2.20b/thttpd.c thttpd-2.20b-php/thttpd.c +--- thttpd-2.20b/thttpd.c Wed Sep 27 21:31:48 2000 ++++ thttpd-2.20b-php/thttpd.c Mon Nov 13 14:25:57 2000 +@@ -1333,6 +1333,10 @@ + clear_connection( c, tvP ); + return; + } ++ if (hc->file_address == (char *) 1) { ++ tmr_cancel( c->idle_read_timer ); ++ return; ++ } + if ( c->bytes_sent >= c->bytes_to_send ) + { + /* There's nothing to send. */ |