From: Jim Jagielski Date: Mon, 28 Aug 2006 16:34:40 +0000 (+0000) Subject: Merge r434483 from trunk: X-Git-Tag: 2.2.4~194 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e2bb0a8c6d9f029ec04d6c336744e154d8b0e11c;p=thirdparty%2Fapache%2Fhttpd.git Merge r434483 from trunk: * Close connection to backend if reading of request body fails. PR: 40310 Submitted by: Ian Abel Reviewed by: rpluem Submitted by: rpluem Reviewed by: jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@437748 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index 122e19fc517..8403fa60b83 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,9 @@ -*- coding: utf-8 -*- Changes with Apache 2.2.4 + *) mod_proxy_ajp: Close connection to backend if reading of request body + fails. PR 40310. [Ian Abel ] + *) mod_proxy_balancer: Retry worker chosen by route / redirect worker if it is in error state before sending "Service Temporarily Unavailable". PR 38962. [Christian Boitel ] diff --git a/STATUS b/STATUS index af34c6907e8..9424dffcec3 100644 --- a/STATUS +++ b/STATUS @@ -86,15 +86,6 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK: http://people.apache.org/~wrowe/mod_isapi-416293-to-httpd-2.2.patch +1 wrowe , fielding, jerenkrantz - * mod_proxy_ajp: Close connection to backend if reading of request body - fails. - PR: 40310 - Trunk version of patch: - http://svn.apache.org/viewvc?view=rev&revision=434483 - 2.2.x version of patch: - Trunk version works - +1 rpluem, sctemme, jim, mturk - PATCHES PROPOSED TO BACKPORT FROM TRUNK: * mpm_winnt: Fix return values from wait_for_many_objects. diff --git a/modules/proxy/mod_proxy_ajp.c b/modules/proxy/mod_proxy_ajp.c index 1a0d6e155e2..c0dfbfa84df 100644 --- a/modules/proxy/mod_proxy_ajp.c +++ b/modules/proxy/mod_proxy_ajp.c @@ -175,6 +175,8 @@ static int ap_proxy_ajp_request(apr_pool_t *p, request_rec *r, AJP13_MAX_SEND_BODY_SZ); if (status != APR_SUCCESS) { + /* We had a failure: Close connection to backend */ + conn->close++; ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r->server, "proxy: ap_get_brigade failed"); apr_brigade_destroy(input_brigade);