Commit 3bdbecbc authored by Jim Jagielski's avatar Jim Jagielski
Browse files

Merge r507516 from trunk:

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
parent a832a7db
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
                                                        -*- 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>]
+0 −5
Original line number Diff line number Diff line
@@ -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. ]

+10 −0
Original line number Diff line number Diff line
@@ -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;
}