You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ic...@apache.org on 2019/05/28 13:00:21 UTC

svn commit: r1860262 - /httpd/httpd/patches/2.4.x/h2-v1.15.1.patch

Author: icing
Date: Tue May 28 13:00:21 2019
New Revision: 1860262

URL: http://svn.apache.org/viewvc?rev=1860262&view=rev
Log:
for backporting

Added:
    httpd/httpd/patches/2.4.x/h2-v1.15.1.patch

Added: httpd/httpd/patches/2.4.x/h2-v1.15.1.patch
URL: http://svn.apache.org/viewvc/httpd/httpd/patches/2.4.x/h2-v1.15.1.patch?rev=1860262&view=auto
==============================================================================
--- httpd/httpd/patches/2.4.x/h2-v1.15.1.patch (added)
+++ httpd/httpd/patches/2.4.x/h2-v1.15.1.patch Tue May 28 13:00:21 2019
@@ -0,0 +1,101 @@
+Index: modules/http2/h2_headers.c
+===================================================================
+--- modules/http2/h2_headers.c	(revision 1860260)
++++ modules/http2/h2_headers.c	(working copy)
+@@ -102,8 +102,9 @@
+                                     const apr_bucket *src)
+ {
+     if (H2_BUCKET_IS_HEADERS(src)) {
+-        h2_headers *r = ((h2_bucket_headers *)src->data)->headers;
+-        apr_bucket *b = h2_bucket_headers_create(dest->bucket_alloc, r);
++        h2_headers *src_headers = ((h2_bucket_headers *)src->data)->headers;
++        apr_bucket *b = h2_bucket_headers_create(dest->bucket_alloc, 
++                                                 h2_headers_clone(dest->p, src_headers));
+         APR_BRIGADE_INSERT_TAIL(dest, b);
+         return b;
+     }
+@@ -156,9 +157,16 @@
+ 
+ h2_headers *h2_headers_copy(apr_pool_t *pool, h2_headers *h)
+ {
+-    return h2_headers_create(h->status, h->headers, h->notes, h->raw_bytes, pool);
++    return h2_headers_create(h->status, apr_table_copy(pool, h->headers), 
++                             apr_table_copy(pool, h->notes), h->raw_bytes, pool);
+ }
+ 
++h2_headers *h2_headers_clone(apr_pool_t *pool, h2_headers *h)
++{
++    return h2_headers_create(h->status, apr_table_clone(pool, h->headers), 
++                             apr_table_clone(pool, h->notes), h->raw_bytes, pool);
++}
++
+ h2_headers *h2_headers_die(apr_status_t type,
+                              const h2_request *req, apr_pool_t *pool)
+ {
+Index: modules/http2/h2_headers.h
+===================================================================
+--- modules/http2/h2_headers.h	(revision 1860260)
++++ modules/http2/h2_headers.h	(working copy)
+@@ -59,12 +59,18 @@
+                                  apr_table_t *header, apr_pool_t *pool);
+ 
+ /**
+- * Clone the headers into another pool. This will not copy any
++ * Copy the headers into another pool. This will not copy any
+  * header strings.
+  */
+ h2_headers *h2_headers_copy(apr_pool_t *pool, h2_headers *h);
+ 
+ /**
++ * Clone the headers into another pool. This will also clone any
++ * header strings.
++ */
++h2_headers *h2_headers_clone(apr_pool_t *pool, h2_headers *h);
++
++/**
+  * Create the headers for the given error.
+  * @param stream_id id of the stream to create the headers for
+  * @param type the error code
+Index: modules/http2/h2_session.c
+===================================================================
+--- modules/http2/h2_session.c	(revision 1860260)
++++ modules/http2/h2_session.c	(working copy)
+@@ -1977,6 +1977,7 @@
+             ev_stream_closed(session, stream);
+             break;
+         case H2_SS_CLEANUP:
++            nghttp2_session_set_stream_user_data(session->ngh2, stream->id, NULL);
+             h2_mplx_stream_cleanup(session->mplx, stream);
+             break;
+         default:
+Index: modules/http2/h2_version.h
+===================================================================
+--- modules/http2/h2_version.h	(revision 1860260)
++++ modules/http2/h2_version.h	(working copy)
+@@ -27,7 +27,7 @@
+  * @macro
+  * Version number of the http2 module as c string
+  */
+-#define MOD_HTTP2_VERSION "1.14.1"
++#define MOD_HTTP2_VERSION "1.15.1"
+ 
+ /**
+  * @macro
+@@ -35,6 +35,6 @@
+  * release. This is a 24 bit number with 8 bits for major number, 8 bits
+  * for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
+  */
+-#define MOD_HTTP2_VERSION_NUM 0x010e01
++#define MOD_HTTP2_VERSION_NUM 0x010f01
+ 
+ #endif /* mod_h2_h2_version_h */
+Index: .
+===================================================================
+--- .	(revision 1860260)
++++ .	(working copy)
+
+Property changes on: .
+___________________________________________________________________
+Modified: svn:mergeinfo
+## -0,0 +0,1 ##
+   Merged /httpd/httpd/trunk:r1860260