diff --git a/httpd-2.4.2-r1332643.patch b/httpd-2.4.2-r1332643+.patch similarity index 95% rename from httpd-2.4.2-r1332643.patch rename to httpd-2.4.2-r1332643+.patch index c408d29..a8ff500 100644 --- a/httpd-2.4.2-r1332643.patch +++ b/httpd-2.4.2-r1332643+.patch @@ -1,8 +1,11 @@ +# ./pullrev.sh 1332643 1345599 https://bugzilla.redhat.com//show_bug.cgi?id=809599 http://svn.apache.org/viewvc?view=revision&revision=1332643 +http://svn.apache.org/viewvc?view=revision&revision=1345599 + --- httpd-2.4.2/modules/ssl/ssl_private.h +++ httpd-2.4.2/modules/ssl/ssl_private.h @@ -139,6 +139,11 @@ @@ -107,7 +110,7 @@ http://svn.apache.org/viewvc?view=revision&revision=1332643 } bio_filter_in_ctx_t; /* -@@ -1374,6 +1376,27 @@ +@@ -1374,6 +1376,26 @@ APR_BRIGADE_INSERT_TAIL(bb, bucket); } @@ -123,9 +126,8 @@ http://svn.apache.org/viewvc?view=revision&revision=1332643 + SSL_get0_next_proto_negotiated( + inctx->ssl, &next_proto, &next_proto_len); + ap_log_cerror(APLOG_MARK, APLOG_DEBUG, APR_SUCCESS, f->c, -+ "SSL NPN negotiated protocol: '%s'", -+ apr_pstrmemdup(f->c->pool, (const char*)next_proto, -+ next_proto_len)); ++ APLOGNO(02306) "SSL NPN negotiated protocol: '%*s'", ++ next_proto_len, (const char*)next_proto); + modssl_run_npn_proto_negotiated_hook( + f->c, (const char*)next_proto, next_proto_len); + inctx->npn_finished = 1; @@ -135,7 +137,7 @@ http://svn.apache.org/viewvc?view=revision&revision=1332643 return APR_SUCCESS; } -@@ -1855,6 +1878,7 @@ +@@ -1855,6 +1877,7 @@ inctx->block = APR_BLOCK_READ; inctx->pool = c->pool; inctx->filter_ctx = filter_ctx; @@ -153,10 +155,7 @@ http://svn.apache.org/viewvc?view=revision&revision=1332643 #include "util_md5.h" static void ssl_configure_env(request_rec *r, SSLConnRec *sslconn); -@@ -2143,3 +2144,84 @@ - return -1; - } - #endif +@@ -2145,0 +2147,83 @@ + +#ifdef HAVE_TLS_NPN +/* @@ -202,7 +201,7 @@ http://svn.apache.org/viewvc?view=revision&revision=1332643 + /* If the protocol name is too long (the length must fit in one byte), + * then log an error and skip it. */ + if (length > 255) { -+ ap_log_cerror(APLOG_MARK, APLOG_ERR, 0, c, ++ ap_log_cerror(APLOG_MARK, APLOG_ERR, 0, c, APLOGNO(02307) + "SSL NPN protocol name too long (length=%u): %s", + length, string); + continue; @@ -226,6 +225,8 @@ http://svn.apache.org/viewvc?view=revision&revision=1332643 + for (i = 0; i < num_protos; ++i) { + const char *string = APR_ARRAY_IDX(protos, i, const char*); + apr_size_t length = strlen(string); ++ if (length > 255) ++ continue; + *start = (unsigned char)length; + ++start; + memcpy(start, string, length * sizeof(unsigned char)); diff --git a/httpd.spec b/httpd.spec index 6710fa8..9a07862 100644 --- a/httpd.spec +++ b/httpd.spec @@ -8,7 +8,7 @@ Summary: Apache HTTP Server Name: httpd Version: 2.4.2 -Release: 12%{?dist} +Release: 13%{?dist} URL: http://httpd.apache.org/ Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2 Source1: index.html @@ -49,7 +49,7 @@ Patch27: httpd-2.4.2-iconlink.patch Patch40: httpd-2.4.2-restart.patch Patch41: httpd-2.4.2-r1327036+.patch Patch42: httpd-2.4.2-r1326980+.patch -Patch43: httpd-2.4.2-r1332643.patch +Patch43: httpd-2.4.2-r1332643+.patch License: ASL 2.0 Group: System Environment/Daemons BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root @@ -160,7 +160,7 @@ authentication to the Apache HTTP Server. %patch40 -p1 -b .restart %patch41 -p1 -b .r1327036+ %patch42 -p1 -b .r1326980+ -%patch43 -p1 -b .r1332643 +%patch43 -p1 -b .r1332643+ # Patch in vendor/release string sed "s/@RELEASE@/%{vstring}/" < %{PATCH20} | patch -p1 @@ -565,6 +565,9 @@ rm -rf $RPM_BUILD_ROOT %{_sysconfdir}/rpm/macros.httpd %changelog +* Wed Jun 6 2012 Joe Orton - 2.4.2-13 +- pull fix for NPN patch from upstream (r1345599) + * Thu May 31 2012 Joe Orton - 2.4.2-12 - update suexec patch to use LOG_AUTHPRIV facility diff --git a/pullrev.sh b/pullrev.sh index 9968fa3..7ee601e 100755 --- a/pullrev.sh +++ b/pullrev.sh @@ -34,7 +34,7 @@ prev=/dev/null for r in $*; do echo "+ fetching ${r}" this=`mktemp /tmp/pullrevXXXXXX` - svn diff -c ${r} ${repo} | filterdiff --remove-timestamps -x 'CHANGES' \ + svn diff -c ${r} ${repo} | filterdiff --remove-timestamps -x 'CHANGES' -x 'next-number' \ --addprefix="${prefix}/" > ${this} next=`mktemp /tmp/pullrevXXXXXX` combinediff --quiet ${prev} ${this} > ${next}