From 6abf69b5493918e7e098c40086142d3209bf0e91 Mon Sep 17 00:00:00 2001 From: Jan Kaluza Date: Mon, 26 Oct 2015 08:02:55 +0100 Subject: [PATCH] fix crash when using -X argument (#1272234) --- httpd-2.4.17-debug-crash.patch | 42 ++++++++++++++++++++++++++++++++++ httpd.spec | 7 +++++- 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 httpd-2.4.17-debug-crash.patch diff --git a/httpd-2.4.17-debug-crash.patch b/httpd-2.4.17-debug-crash.patch new file mode 100644 index 0000000..5bac505 --- /dev/null +++ b/httpd-2.4.17-debug-crash.patch @@ -0,0 +1,42 @@ +diff --git a/server/mpm/event/event.c b/server/mpm/event/event.c +index cd70b7d..94813af 100644 +--- a/server/mpm/event/event.c ++++ b/server/mpm/event/event.c +@@ -3042,8 +3042,7 @@ static int event_open_logs(apr_pool_t * p, apr_pool_t * plog, + + all_buckets = apr_pcalloc(pconf, num_buckets * sizeof(*all_buckets)); + for (i = 0; i < num_buckets; i++) { +- if (!one_process && /* no POD in one_process mode */ +- (rv = ap_mpm_podx_open(pconf, &all_buckets[i].pod))) { ++ if (rv = ap_mpm_podx_open(pconf, &all_buckets[i].pod)) { + ap_log_error(APLOG_MARK, APLOG_CRIT | level_flags, rv, + (startup ? NULL : s), + "could not open pipe-of-death"); +diff --git a/server/mpm/prefork/prefork.c b/server/mpm/prefork/prefork.c +index 343e51d..f4c3dbe 100644 +--- a/server/mpm/prefork/prefork.c ++++ b/server/mpm/prefork/prefork.c +@@ -1326,8 +1326,7 @@ static int prefork_open_logs(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp, + all_buckets = apr_pcalloc(pconf, num_buckets * + sizeof(prefork_child_bucket)); + for (i = 0; i < num_buckets; i++) { +- if (!one_process && /* no POD in one_process mode */ +- (rv = ap_mpm_pod_open(pconf, &all_buckets[i].pod))) { ++ if (rv = ap_mpm_pod_open(pconf, &all_buckets[i].pod)) { + ap_log_error(APLOG_MARK, APLOG_CRIT | level_flags, rv, + (startup ? NULL : s), + "could not open pipe-of-death"); +diff --git a/server/mpm/worker/worker.c b/server/mpm/worker/worker.c +index 4a729c0..8a59219 100644 +--- a/server/mpm/worker/worker.c ++++ b/server/mpm/worker/worker.c +@@ -2051,8 +2051,7 @@ static int worker_open_logs(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp, + + all_buckets = apr_pcalloc(pconf, num_buckets * sizeof(*all_buckets)); + for (i = 0; i < num_buckets; i++) { +- if (!one_process && /* no POD in one_process mode */ +- (rv = ap_mpm_podx_open(pconf, &all_buckets[i].pod))) { ++ if (rv = ap_mpm_podx_open(pconf, &all_buckets[i].pod)) { + ap_log_error(APLOG_MARK, APLOG_CRIT | level_flags, rv, + (startup ? NULL : s), + "could not open pipe-of-death"); diff --git a/httpd.spec b/httpd.spec index 1e9570b..c967380 100644 --- a/httpd.spec +++ b/httpd.spec @@ -8,7 +8,7 @@ Summary: Apache HTTP Server Name: httpd Version: 2.4.17 -Release: 2%{?dist} +Release: 3%{?dist} URL: http://httpd.apache.org/ Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2 Source1: index.html @@ -66,6 +66,7 @@ Patch35: httpd-2.4.17-sslciphdefault.patch Patch55: httpd-2.4.4-malformed-host.patch Patch56: httpd-2.4.4-mod_unique_id.patch Patch57: httpd-2.4.10-sigint.patch +Patch58: httpd-2.4.17-debug-crash.patch # Security fixes License: ASL 2.0 Group: System Environment/Daemons @@ -210,6 +211,7 @@ interface for storing and accessing per-user session data. %patch55 -p1 -b .malformedhost %patch56 -p1 -b .uniqueid %patch57 -p1 -b .sigint +%patch58 -p1 -b .debugcrash # Patch in the vendor string sed -i '/^#define PLATFORM/s/Unix/%{vstring}/' os/unix/os.h @@ -674,6 +676,9 @@ rm -rf $RPM_BUILD_ROOT %{_rpmconfigdir}/macros.d/macros.httpd %changelog +* Mon Oct 26 2015 Jan Kaluza - 2.4.17-3 +- fix crash when using -X argument (#1272234) + * Wed Oct 14 2015 Jan Kaluza - 2.4.17-2 - rebase socket activation patch to 2.4.17