diff options
author | Stefan Fritsch <sf@debian.org> | 2008-10-01 09:48:07 +0000 |
---|---|---|
committer | Stefan Fritsch <sf@sfritsch.de> | 2012-01-02 10:36:57 +0100 |
commit | 44cc8d69d58be009ca1404b51c627957fe8d124b (patch) | |
tree | ed835070ebecacf6b44e987eb007d8602f7b7f3d | |
parent | 062ee7b2cc2bebfae6a0cd0972aacb2d81b150e1 (diff) | |
download | apache2-44cc8d69d58be009ca1404b51c627957fe8d124b.tar.gz |
fix timout handling in mod_proxy_http
git-svn-id: svn+ssh://svn.debian.org/svn/pkg-apache/trunk/apache2@832 01b336ce-410b-0410-9a02-a0e7f243c266
-rw-r--r-- | debian/changelog | 8 | ||||
-rw-r--r-- | debian/patches/00list | 1 | ||||
-rw-r--r-- | debian/patches/064_mod_proxy_http_timeout.dpatch | 34 |
3 files changed, 43 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index b6e67103..26bd7777 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +apache2 (2.2.9-10) UNRELEASED; urgency=low + + * Regression fix from upstream svn for mod_proxy_http: + Don't trigger a retry by the client if a failure to read the response line + was the result of a timeout. + + -- Stefan Fritsch <sf@debian.org> Wed, 01 Oct 2008 11:38:43 +0200 + apache2 (2.2.9-9) unstable; urgency=medium * Revert the attempted fix for #496080 because it did not work due to diff --git a/debian/patches/00list b/debian/patches/00list index 0df075bd..ab5cf2c2 100644 --- a/debian/patches/00list +++ b/debian/patches/00list @@ -22,6 +22,7 @@ 061_balancer_manager_nonce.dpatch 062_proxy_http_fix_lost_querystring.dpatch 063_mod_headers_edit_fix.dpatch +064_mod_proxy_http_timeout.dpatch 099_config_guess_sub_update 200_cp_suexec.dpatch 201_build_suexec-custom.dpatch diff --git a/debian/patches/064_mod_proxy_http_timeout.dpatch b/debian/patches/064_mod_proxy_http_timeout.dpatch new file mode 100644 index 00000000..d17d31e1 --- /dev/null +++ b/debian/patches/064_mod_proxy_http_timeout.dpatch @@ -0,0 +1,34 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## +## All lines beginning with `## DP:' are a description of the patch. +## DP:http://svn.apache.org/viewvc?view=rev&revision=699841 + +@DPATCH@ +--- a/modules/proxy/mod_proxy_http.c 2008/09/28 15:34:34 699840 ++++ b/modules/proxy/mod_proxy_http.c 2008/09/28 15:36:44 699841 +@@ -1375,6 +1375,10 @@ + ap_log_rerror(APLOG_MARK, APLOG_ERR, rc, r, + "proxy: error reading status line from remote " + "server %s", backend->hostname); ++ if (rc == APR_TIMEUP) { ++ ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r, ++ "proxy: read timeout"); ++ } + /* + * If we are a reverse proxy request shutdown the connection + * WITHOUT ANY response to trigger a retry by the client +@@ -1382,9 +1386,12 @@ + * BUT currently we should not do this if the request is the + * first request on a keepalive connection as browsers like + * seamonkey only display an empty page in this case and do +- * not do a retry. ++ * not do a retry. We should also not do this on a ++ * connection which times out; instead handle as ++ * we normally would handle timeouts + */ +- if (r->proxyreq == PROXYREQ_REVERSE && c->keepalives) { ++ if (r->proxyreq == PROXYREQ_REVERSE && c->keepalives && ++ rc != APR_TIMEUP) { + apr_bucket *eos; + + ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r, |