summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGarrett Rooney <rooneg@apache.org>2006-01-05 05:24:43 +0000
committerGarrett Rooney <rooneg@apache.org>2006-01-05 05:24:43 +0000
commitae4adc48abc1cfa0eecd7a06996aafc14ea3783c (patch)
treee0731fb08dc8ead7856731cf8cfcc62e4aea4ea0
parent98e166d510f3f85993282c79ec6c02a5f2953e2c (diff)
downloadhttpd-ae4adc48abc1cfa0eecd7a06996aafc14ea3783c.tar.gz
Make sure that we read the padding bytes in all cases. Also cut
down on some of the crazy verbose logging, since this seems to be the problem we were trying to find. * modules/proxy/mod_proxy_fcgi.c (dispatch): Remove really verbose logging, move reading of the padding bytes down to the end of the FCGI_STDOUT case. Tested By: iholsman git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/fcgi-proxy-dev@366086 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--modules/proxy/mod_proxy_fcgi.c26
1 files changed, 9 insertions, 17 deletions
diff --git a/modules/proxy/mod_proxy_fcgi.c b/modules/proxy/mod_proxy_fcgi.c
index 82196ae1ee..4df01333b0 100644
--- a/modules/proxy/mod_proxy_fcgi.c
+++ b/modules/proxy/mod_proxy_fcgi.c
@@ -516,11 +516,6 @@ static apr_status_t dispatch(proxy_conn_rec *conn, request_rec *r,
plen = fheader[6];
- ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r->server,
- "type %d request-id %d clen: %" APR_SIZE_T_FMT " plen %d",
- type, rid,
- clen, plen
- );
recv_again:
if (clen > sizeof(readbuf) - 1) {
readbuflen = sizeof(readbuf) - 1;
@@ -537,9 +532,6 @@ recv_again:
break;
}
readbuf[readbuflen] = 0;
- ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r->server,
- "readbuf (%" APR_SIZE_T_FMT "): %s",
- readbuflen, readbuf );
}
switch (type) {
@@ -586,15 +578,6 @@ recv_again:
clen -= readbuflen;
goto recv_again;
}
-
- if (plen) {
- readbuflen = plen;
-
- rv = apr_socket_recv(conn->sock, readbuf, &readbuflen);
- if (rv != APR_SUCCESS) {
- break;
- }
- }
} else {
b = apr_bucket_eos_create(c->bucket_alloc);
@@ -607,6 +590,15 @@ recv_again:
/* XXX Why don't we cleanup here? (logic from AJP) */
}
+
+ if (plen) {
+ readbuflen = plen;
+
+ rv = apr_socket_recv(conn->sock, readbuf, &readbuflen);
+ if (rv != APR_SUCCESS) {
+ break;
+ }
+ }
break;
case FCGI_STDERR: