diff -u apache2-2.2.8/debian/control apache2-2.2.8/debian/control --- apache2-2.2.8/debian/control +++ apache2-2.2.8/debian/control @@ -1,7 +1,8 @@ Source: apache2 Section: web Priority: optional -Maintainer: Debian Apache Maintainers +Maintainer: Ubuntu Core Developers +XSBC-Original-Maintainer: Debian Apache Maintainers Uploaders: Tollef Fog Heen , Thom May , Fabio M. Di Nitto , Adam Conrad , Peter Samuelson , Stefan Fritsch Build-Depends: debhelper (>=4.1.16), dpatch, lsb-release, libaprutil1-dev, libapr1-dev (>= 1.2.7-6), openssl, libpcre3-dev, libtool, mawk, zlib1g-dev, libssl-dev, sharutils Standards-Version: 3.7.3.0 diff -u apache2-2.2.8/debian/changelog apache2-2.2.8/debian/changelog --- apache2-2.2.8/debian/changelog +++ apache2-2.2.8/debian/changelog @@ -1,3 +1,13 @@ +apache2 (2.2.8-1ubuntu1) hardy; urgency=low + + * debian/patches/060_fix_mem_leak.dpatch: Per response to upstream Apache + bug, removing a buggy, ifdef'd data struct freeing function, fixes + LP: #224945. + * Modify Maintainer value to match the DebianMaintainerField + specification. + + -- Dustin Kirkland Tue, 13 May 2008 09:18:35 -0500 + apache2 (2.2.8-1) unstable; urgency=low * New upstream version: diff -u apache2-2.2.8/debian/patches/00list apache2-2.2.8/debian/patches/00list --- apache2-2.2.8/debian/patches/00list +++ apache2-2.2.8/debian/patches/00list @@ -19,0 +20 @@ +060_fix_ssl_mem_leak.dpatch only in patch2: unchanged: --- apache2-2.2.8.orig/debian/patches/060_fix_ssl_mem_leak.dpatch +++ apache2-2.2.8/debian/patches/060_fix_ssl_mem_leak.dpatch @@ -0,0 +1,29 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run + +@DPATCH@ +--- a/modules/ssl/mod_ssl.c 2008/05/07 14:16:38 654118 ++++ b/modules/ssl/mod_ssl.c 2008/05/07 14:17:31 654119 +@@ -218,17 +218,18 @@ + #if HAVE_ENGINE_LOAD_BUILTIN_ENGINES + ENGINE_cleanup(); + #endif +-#ifdef HAVE_OPENSSL +-#if OPENSSL_VERSION_NUMBER >= 0x00907001 +- CRYPTO_cleanup_all_ex_data(); +-#endif +-#endif + ERR_remove_state(0); + + /* Don't call ERR_free_strings here; ERR_load_*_strings only + * actually load the error strings once per process due to static + * variable abuse in OpenSSL. */ + ++ /* Also don't call CRYPTO_cleanup_all_ex_data here; any registered ++ * ex_data indices may have been cached in static variables in ++ * OpenSSL; removing them may cause havoc. Notably, with OpenSSL ++ * versions >= 0.9.8f, COMP_CTX cleanups would not be run, which ++ * could result in a per-connection memory leak (!). */ ++ + /* + * TODO: determine somewhere we can safely shove out diagnostics + * (when enabled) at this late stage in the game: