]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Merge r379237 from trunk:
authorRuediger Pluem <rpluem@apache.org>
Sun, 2 Apr 2006 19:25:34 +0000 (19:25 +0000)
committerRuediger Pluem <rpluem@apache.org>
Sun, 2 Apr 2006 19:25:34 +0000 (19:25 +0000)
* Disable persistent connections for SSL backends again as we do not
  handle them correctly, because we recreate backend->connection for each
  request and thus try to initialize an already existing SSL connection.

Noticed by: jorton
Submitted by: rpluem
Reviewed by: rpluem, trawick, jim

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@390885 13f79535-47bb-0310-9956-ffa450edef68

STATUS
modules/proxy/mod_proxy_http.c

diff --git a/STATUS b/STATUS
index 0ea1717c0aab663392f4830c08330d60398724d9..16108f02f24ef1dccfb945531d3341a5debdb826 100644 (file)
--- a/STATUS
+++ b/STATUS
@@ -74,16 +74,6 @@ RELEASE SHOWSTOPPERS:
 PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
   [ start all new proposals below, under PATCHES PROPOSED. ]
 
-    * mod_proxy_http: Disable persistent connections for SSL backends as we do
-      not handle them correctly, because we recreate backend->connection for
-      each request and thus try to initialize an already existing SSL
-      connection.
-      Trunk version of patch:
-         http://svn.apache.org/viewcvs?rev=379237&view=rev
-      Backport version for 2.2.x of patch:
-         Trunk version of patch works
-      +1 rpluem, trawick, jim
-
 
 PATCHES PROPOSED TO BACKPORT FROM TRUNK:
 
index 4d59be05ed5b2dae3c902d238741c5c515ca3229..9d439a61ee9548d2f7f7cda0916e4d137923b924 100644 (file)
@@ -987,7 +987,7 @@ skip_body:
      * otherwise sent Connection: Keep-Alive.
      */
     if (!force10) {
-        if (p_conn->close) {
+        if (p_conn->close || p_conn->close_on_recycle) {
             buf = apr_pstrdup(p, "Connection: close" CRLF);
         }
         else {
@@ -1672,6 +1672,14 @@ static int proxy_http_handler(request_rec *r, proxy_worker *worker,
 
 
     backend->is_ssl = is_ssl;
+    /*
+     * TODO: Currently we cannot handle persistent SSL backend connections,
+     * because we recreate backend->connection for each request and thus
+     * try to initialize an already existing SSL connection. This does
+     * not work.
+     */
+    if (is_ssl)
+        backend->close_on_recycle = 1;
 
     /* Step One: Determine Who To Connect To */
     if ((status = ap_proxy_determine_connection(p, r, conf, worker, backend,