]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Merge r507516 from trunk:
authorJim Jagielski <jim@apache.org>
Tue, 20 Feb 2007 17:06:00 +0000 (17:06 +0000)
committerJim Jagielski <jim@apache.org>
Tue, 20 Feb 2007 17:06:00 +0000 (17:06 +0000)
Patch for PR#11540 (submitted by Stuart Children)

Submitted by: niq
Reviewed by: jim

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

CHANGES
STATUS
modules/proxy/mod_proxy.c

diff --git a/CHANGES b/CHANGES
index 220f9f907a60ba6f5abfd74068d069e19d7fe545..395c324810192aa0ce4a994039d2d8a02f485aa0 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,9 @@
                                                         -*- coding: utf-8 -*-
 Changes with Apache 2.2.5
 
+  *) mod_proxy: Fix some proxy setting inheritance problems (eg:
+     ProxyTimeout). PR 11540. [Stuart Children <stuart terminus.co.uk>]
+
   *) Unix MPMs: Catch SIGFPE so that exception hooks and CoreDumpDirectory
      can work after that terminating signal.
      [Eric Covener <covener gmail.com>]
diff --git a/STATUS b/STATUS
index 58aa41b46a8f581b255f112acd68700e3efea1d1..b19a058da461588a646474ea41a9ab4588108635 100644 (file)
--- a/STATUS
+++ b/STATUS
@@ -74,11 +74,6 @@ CURRENT RELEASE NOTES:
 
 RELEASE SHOWSTOPPERS:
 
-   * mod_proxy: Various settings being ignored due to not merging *_set params
-       PR: 11540
-     http://svn.apache.org/viewvc?view=rev&revision=507516
-     +1: jim, trawick, minfrin
-
 PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
   [ start all new proposals below, under PATCHES PROPOSED. ]
 
index 9e78853df5af637f9bf61428f2de6f08a6a90c60..30fc85b592bfab5f6d77ac7eb869851ab67cf8da 100644 (file)
@@ -894,15 +894,25 @@ static void * merge_proxy_config(apr_pool_t *p, void *basev, void *overridesv)
 
     ps->domain = (overrides->domain == NULL) ? base->domain : overrides->domain;
     ps->viaopt = (overrides->viaopt_set == 0) ? base->viaopt : overrides->viaopt;
+    ps->viaopt_set = overrides->viaopt_set || base->viaopt_set;
     ps->req = (overrides->req_set == 0) ? base->req : overrides->req;
+    ps->req_set = overrides->req_set || base->req_set;
     ps->recv_buffer_size = (overrides->recv_buffer_size_set == 0) ? base->recv_buffer_size : overrides->recv_buffer_size;
+    ps->recv_buffer_size_set = overrides->recv_buffer_size_set || base->recv_buffer_size_set;
     ps->io_buffer_size = (overrides->io_buffer_size_set == 0) ? base->io_buffer_size : overrides->io_buffer_size;
+    ps->io_buffer_size_set = overrides->io_buffer_size_set || base->io_buffer_size_set;
     ps->maxfwd = (overrides->maxfwd_set == 0) ? base->maxfwd : overrides->maxfwd;
+    ps->maxfwd_set = overrides->maxfwd_set || base->maxfwd_set;
     ps->error_override = (overrides->error_override_set == 0) ? base->error_override : overrides->error_override;
+    ps->error_override_set = overrides->error_override_set || base->error_override_set;
     ps->preserve_host = (overrides->preserve_host_set == 0) ? base->preserve_host : overrides->preserve_host;
+    ps->preserve_host_set = overrides->preserve_host_set || base->preserve_host_set;
     ps->timeout= (overrides->timeout_set == 0) ? base->timeout : overrides->timeout;
+    ps->timeout_set = overrides->timeout_set || base->timeout_set;
     ps->badopt = (overrides->badopt_set == 0) ? base->badopt : overrides->badopt;
+    ps->badopt_set = overrides->badopt_set || base->badopt_set;
     ps->proxy_status = (overrides->proxy_status_set == 0) ? base->proxy_status : overrides->proxy_status;
+    ps->proxy_status_set = overrides->proxy_status_set || base->proxy_status_set;
     ps->pool = p;
     return ps;
 }