summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Kalowsky <kalowsky@php.net>2002-08-14 17:15:49 +0000
committerDan Kalowsky <kalowsky@php.net>2002-08-14 17:15:49 +0000
commit0917902b925e79d8e892829802f0c21ebffb203a (patch)
treed3db58d72227528cb2722c3d47136e536e618845
parent4b691d154ab1e3ead10ad15133baa10886d59cf7 (diff)
downloadphp-git-0917902b925e79d8e892829802f0c21ebffb203a.tar.gz
Fix for Bug #9280 with regards to an Expect header. patch submitted by
Ilia <ilia@prohost.org> # someone just give the man his php4 karma please!
-rw-r--r--sapi/apache/mod_php4.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sapi/apache/mod_php4.c b/sapi/apache/mod_php4.c
index 3aaa6bafb9..19d03f7e36 100644
--- a/sapi/apache/mod_php4.c
+++ b/sapi/apache/mod_php4.c
@@ -129,6 +129,14 @@ int sapi_apache_read_post(char *buffer, uint count_bytes TSRMLS_DC)
request_rec *r = (request_rec *) SG(server_context);
void (*handler)(int);
+ /*
+ * This handles the situation where the browser sends a Expect: 100-continue header
+ * and needs to recieve confirmation from the server on whether or not it can send
+ * the rest of the request. RFC 2616
+ *
+ */
+ if( !ap_should_client_block(r) ) return total_read_bytes;
+
handler = signal(SIGPIPE, SIG_IGN);
while (total_read_bytes<count_bytes) {
hard_timeout("Read POST information", r); /* start timeout timer */