From 9f53d0c4f3baad7074b3be8ca47a6cdf1d342c42 Mon Sep 17 00:00:00 2001 From: Jim Jagielski Date: Thu, 17 Apr 2014 13:37:04 +0000 Subject: [PATCH] Merge r1585919 from trunk: Reverse the order when merging global and vhost-level config arrays. Putting the vhost-level elements last allows overriding global settings (for the deprecated SSLRequire directive, the order is irrelevant, all of them must be met, cf. ssl_engine_kernel.c:ssl_hook_Access). Submitted by: kbrand Reviewed/backported by: jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1588245 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 4 ++++ STATUS | 6 ------ modules/ssl/ssl_engine_config.c | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/CHANGES b/CHANGES index 7556548828..d0e87916d1 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,10 @@ Changes with Apache 2.4.10 + *) mod_ssl: fix merging of global and vhost-level settings with the + SSLCertificateFile, SSLCertificateKeyFile, and SSLOpenSSLConfCmd + directives. PR 56353. [Kaspar Brand] + *) mod_headers: Allow the "value" parameter of Header and RequestHeader to contain an ap_expr expression if prefixed with "expr=". [Eric Covener] diff --git a/STATUS b/STATUS index d14575afa2..f377172289 100644 --- a/STATUS +++ b/STATUS @@ -111,12 +111,6 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK: 2.4.x patch: trunk patch works (modulo CHANGES) +1: kbrand, ylavic, jorton - * mod_ssl: reverse the order when merging global and vhost-level config - arrays (PR 56353) - trunk patch: https://svn.apache.org/r1585919 - 2.4.x patch: trunk patch works (modulo CHANGES) - +1: kbrand, ylavic, jorton - PATCHES PROPOSED TO BACKPORT FROM TRUNK: [ New proposals should be added at the end of the list ] diff --git a/modules/ssl/ssl_engine_config.c b/modules/ssl/ssl_engine_config.c index 2dda6a9532..a9e955f5bf 100644 --- a/modules/ssl/ssl_engine_config.c +++ b/modules/ssl/ssl_engine_config.c @@ -242,7 +242,7 @@ void *ssl_config_server_create(apr_pool_t *p, server_rec *s) } #define cfgMerge(el,unset) mrg->el = (add->el == (unset)) ? base->el : add->el -#define cfgMergeArray(el) mrg->el = apr_array_append(p, add->el, base->el) +#define cfgMergeArray(el) mrg->el = apr_array_append(p, base->el, add->el) #define cfgMergeString(el) cfgMerge(el, NULL) #define cfgMergeBool(el) cfgMerge(el, UNSET) #define cfgMergeInt(el) cfgMerge(el, UNSET) -- 2.40.0