summaryrefslogtreecommitdiff
path: root/www/apache22
diff options
context:
space:
mode:
authortron <tron>2009-05-22 09:46:06 +0000
committertron <tron>2009-05-22 09:46:06 +0000
commitb2e4c73ecd6569f57c8bf534209740fffce1729c (patch)
tree08d0eb5c0674773224665b9edd09863073741393 /www/apache22
parent24f05c50d2a1bab7f98cf4373e50070178857f37 (diff)
downloadpkgsrc-b2e4c73ecd6569f57c8bf534209740fffce1729c.tar.gz
Add patch from the Apache SVN repository to fix the information leak
in the "mod_proxy_ajp" module reported in CVE-2009-1191.
Diffstat (limited to 'www/apache22')
-rw-r--r--www/apache22/Makefile4
-rw-r--r--www/apache22/distinfo3
-rw-r--r--www/apache22/patches/patch-ab40
3 files changed, 44 insertions, 3 deletions
diff --git a/www/apache22/Makefile b/www/apache22/Makefile
index 5115d25dd79..1b103718c3a 100644
--- a/www/apache22/Makefile
+++ b/www/apache22/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.42 2009/04/24 11:21:16 seb Exp $
+# $NetBSD: Makefile,v 1.43 2009/05/22 09:46:06 tron Exp $
DISTNAME= httpd-2.2.11
-PKGREVISION= 2
+PKGREVISION= 3
PKGNAME= ${DISTNAME:S/httpd/apache/}
CATEGORIES= www
MASTER_SITES= ${MASTER_SITE_APACHE:=httpd/} \
diff --git a/www/apache22/distinfo b/www/apache22/distinfo
index 298353a8ba3..6b9c9d233c1 100644
--- a/www/apache22/distinfo
+++ b/www/apache22/distinfo
@@ -1,9 +1,10 @@
-$NetBSD: distinfo,v 1.17 2009/02/15 23:14:40 rillig Exp $
+$NetBSD: distinfo,v 1.18 2009/05/22 09:46:06 tron Exp $
SHA1 (httpd-2.2.11.tar.bz2) = 7af256d53b79342f82222bd7b86eedbd9ac21d9a
RMD160 (httpd-2.2.11.tar.bz2) = b2012af716a459f666e0e41eb04808bd0f7fc28d
Size (httpd-2.2.11.tar.bz2) = 5230130 bytes
SHA1 (patch-aa) = 40f5f687a1217b8d6684dc610d3d4c430f635cbf
+SHA1 (patch-ab) = d5391ca1af9d817d35cb472b0feb05b86a95e560
SHA1 (patch-ac) = 515043b5c215d49fe8f6d3191b502c978e2a2dad
SHA1 (patch-ad) = 088d6ff0e7a8acfe70b4f85a6ce58d42c935fd13
SHA1 (patch-ae) = 86b307d6eefef232b6223afc3f69e64be40bd913
diff --git a/www/apache22/patches/patch-ab b/www/apache22/patches/patch-ab
new file mode 100644
index 00000000000..0d3d420696c
--- /dev/null
+++ b/www/apache22/patches/patch-ab
@@ -0,0 +1,40 @@
+$NetBSD: patch-ab,v 1.10 2009/05/22 09:46:06 tron Exp $
+
+Patch for CVE-2009-1191 taken from the Apache SVN repository:
+http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/modules/proxy/mod_proxy_ajp.c?view=markup&pathrev=768506
+
+--- modules/proxy/mod_proxy_ajp.c 2008/11/15 14:25:54 714273
++++ modules/proxy/mod_proxy_ajp.c 2009/04/25 09:58:52 768506
+@@ -307,21 +307,17 @@
+ "proxy: read zero bytes, expecting"
+ " %" APR_OFF_T_FMT " bytes",
+ content_length);
+- status = ajp_send_data_msg(conn->sock, msg, 0);
+- if (status != APR_SUCCESS) {
+- /* We had a failure: Close connection to backend */
+- conn->close++;
+- ap_log_error(APLOG_MARK, APLOG_ERR, status, r->server,
+- "proxy: send failed to %pI (%s)",
+- conn->worker->cp->addr,
+- conn->worker->hostname);
+- return HTTP_INTERNAL_SERVER_ERROR;
+- }
+- else {
+- /* Client send zero bytes with C-L > 0
+- */
+- return HTTP_BAD_REQUEST;
+- }
++ /*
++ * We can only get here if the client closed the connection
++ * to us without sending the body.
++ * Now the connection is in the wrong state on the backend.
++ * Sending an empty data msg doesn't help either as it does
++ * not move this connection to the correct state on the backend
++ * for later resusage by the next request again.
++ * Close it to clean things up.
++ */
++ conn->close++;
++ return HTTP_BAD_REQUEST;
+ }
+ }
+