]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
mod_ssl: Correctly merge configurations that have client certificates set
authorRainer Jung <rjung@apache.org>
Thu, 18 Oct 2018 10:06:37 +0000 (10:06 +0000)
committerRainer Jung <rjung@apache.org>
Thu, 18 Oct 2018 10:06:37 +0000 (10:06 +0000)
by SSLProxyMachineCertificate{File|Path}.

The certificates and keys loaded during configuration time got lost during
runtime if e.g. SSLProxyMachineCertificate{File|Path} was set on virtual host
level and there was an SSL directive at directory level, e.g. SSLRequire.

This fixes a regression likely introduced in r1740928 (backported in r1824187).

Backport of r1844002 from trunk.

Submitted by: rjung
Reviewed by: rjung, rpluem, jorton

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

CHANGES
STATUS
modules/ssl/ssl_engine_config.c

diff --git a/CHANGES b/CHANGES
index 27cf12257a107fea03bd5f99bbbce0595b0c836c..12985c692b0688544e25d99b5de6a85e3c3ad20d 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -8,6 +8,9 @@ Changes with Apache 2.4.37
      but were originally not verified and should get verified now.
      This is a regression in 2.4.36 (unreleased). [Ruediger Pluem]
 
+  *) mod_ssl: Correctly merge configurations that have client certificates set
+     by SSLProxyMachineCertificate{File|Path}. [Ruediger Pluem]
+
 Changes with Apache 2.4.36
 
   *) mod_brotli, mod_deflate: Restore the separate handling of 304 Not Modified
diff --git a/STATUS b/STATUS
index 6bd211c95e5900d6dd825fcd540e83d297d09649..9f1c1ffb9ed33711b71603a1232da41bda348d42 100644 (file)
--- a/STATUS
+++ b/STATUS
@@ -125,15 +125,6 @@ RELEASE SHOWSTOPPERS:
 PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
   [ start all new proposals below, under PATCHES PROPOSED. ]
 
-  *) mod_ssl: Correctly merge configurations that have client certificates set
-   by SSLProxyMachineCertificate{File|Path}.
-   The certificates and keys loaded during configuration time got lost during
-   runtime if e.g. SSLProxyMachineCertificate{File|Path} was set on virtual host
-   level and there was an SSL directive at directory level, e.g. SSLRequire.
-   This fixes a regression likely introduced in r1740928 (backported in r1824187).
-     trunk patch: http://svn.apache.org/r1844002
-     2.4.x patch: svn merge -c 1844002 ^/httpd/httpd/trunk .
-     +1: rjung, rpluem, jorton
 
 PATCHES PROPOSED TO BACKPORT FROM TRUNK:
   [ New proposals should be added at the end of the list ]
index 29db3d6d5356f83c0774576be3250aa684b758b1..6c10bb50777694164542e64a7cefaca4816eae57 100644 (file)
@@ -467,6 +467,8 @@ static void modssl_ctx_cfg_merge_proxy(apr_pool_t *p,
     cfgMergeString(pkp->cert_file);
     cfgMergeString(pkp->cert_path);
     cfgMergeString(pkp->ca_cert_file);
+    cfgMergeString(pkp->certs);
+    cfgMergeString(pkp->ca_certs);
 }
 
 void *ssl_config_perdir_merge(apr_pool_t *p, void *basev, void *addv)