mirror of
https://github.com/php/php-src.git
synced 2024-12-04 23:34:25 +08:00
Update patch and add persistent connection handling
This commit is contained in:
parent
eea750ebc8
commit
39f8c9807e
@ -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. */
|
||||
|
Loading…
Reference in New Issue
Block a user