Loading CHANGES +8 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,14 @@ Changes with Apache 2.4.18 *) mod_http2: fixes crash on connection abort for a busy connection. fixes crash on a request that did not produce any response. [Stefan Eissing] *) mod_http2: trailers are sent after reponse body if set in request_rec trailers_out before the end-of-request bucket is sent through the output filters. [Stefan Eissing] *) mod_http2: incoming trailers (headers after request body) are properly forwarded to the processing engine. [Stefan Eissing] Loading modules/http2/config.m4 +2 −0 Original line number Diff line number Diff line Loading @@ -154,6 +154,8 @@ AC_DEFUN([APACHE_CHECK_NGHTTP2],[ if test "x$liberrors" != "x"; then AC_MSG_WARN([nghttp2 library is unusable]) fi AC_CHECK_FUNCS([nghttp2_session_change_stream_priority], [APR_ADDTO(MOD_CPPFLAGS, ["-DH2_NG2_CHANGE_PRIO"])], []) else AC_MSG_WARN([nghttp2 version is too old]) fi Loading modules/http2/h2_bucket_eoc.c +2 −1 Original line number Diff line number Diff line Loading @@ -90,10 +90,11 @@ static void bucket_destroy(void *data) if (apr_bucket_shared_destroy(h)) { h2_session *session = h->session; apr_bucket_free(h); if (session) { h2_session_eoc_callback(session); /* all is gone now */ } apr_bucket_free(h); } } Loading modules/http2/h2_config.c +1 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ static h2_config defconf = { H2_INITIAL_WINDOW_SIZE, /* window_size */ -1, /* min workers */ -1, /* max workers */ 10 * 60, /* max workers idle secs */ 10, /* max workers idle secs */ 64 * 1024, /* stream max mem size */ NULL, /* no alt-svcs */ -1, /* alt-svc max age */ Loading modules/http2/h2_conn.c +2 −4 Original line number Diff line number Diff line Loading @@ -177,10 +177,6 @@ apr_status_t h2_conn_process(conn_rec *c, request_rec *r) ap_log_cerror( APLOG_MARK, APLOG_DEBUG, status, session->c, "h2_session(%ld): done", session->id); h2_session_close(session); h2_session_flush(session); /* hereafter session might be gone */ /* Make sure this connection gets closed properly. */ ap_update_child_status_from_conn(c->sbh, SERVER_CLOSING, c); c->keepalive = AP_CONN_CLOSE; Loading @@ -188,6 +184,8 @@ apr_status_t h2_conn_process(conn_rec *c, request_rec *r) c->cs->state = CONN_STATE_WRITE_COMPLETION; } h2_session_close(session); /* hereafter session will be gone */ return status; } Loading Loading
CHANGES +8 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,14 @@ Changes with Apache 2.4.18 *) mod_http2: fixes crash on connection abort for a busy connection. fixes crash on a request that did not produce any response. [Stefan Eissing] *) mod_http2: trailers are sent after reponse body if set in request_rec trailers_out before the end-of-request bucket is sent through the output filters. [Stefan Eissing] *) mod_http2: incoming trailers (headers after request body) are properly forwarded to the processing engine. [Stefan Eissing] Loading
modules/http2/config.m4 +2 −0 Original line number Diff line number Diff line Loading @@ -154,6 +154,8 @@ AC_DEFUN([APACHE_CHECK_NGHTTP2],[ if test "x$liberrors" != "x"; then AC_MSG_WARN([nghttp2 library is unusable]) fi AC_CHECK_FUNCS([nghttp2_session_change_stream_priority], [APR_ADDTO(MOD_CPPFLAGS, ["-DH2_NG2_CHANGE_PRIO"])], []) else AC_MSG_WARN([nghttp2 version is too old]) fi Loading
modules/http2/h2_bucket_eoc.c +2 −1 Original line number Diff line number Diff line Loading @@ -90,10 +90,11 @@ static void bucket_destroy(void *data) if (apr_bucket_shared_destroy(h)) { h2_session *session = h->session; apr_bucket_free(h); if (session) { h2_session_eoc_callback(session); /* all is gone now */ } apr_bucket_free(h); } } Loading
modules/http2/h2_config.c +1 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ static h2_config defconf = { H2_INITIAL_WINDOW_SIZE, /* window_size */ -1, /* min workers */ -1, /* max workers */ 10 * 60, /* max workers idle secs */ 10, /* max workers idle secs */ 64 * 1024, /* stream max mem size */ NULL, /* no alt-svcs */ -1, /* alt-svc max age */ Loading
modules/http2/h2_conn.c +2 −4 Original line number Diff line number Diff line Loading @@ -177,10 +177,6 @@ apr_status_t h2_conn_process(conn_rec *c, request_rec *r) ap_log_cerror( APLOG_MARK, APLOG_DEBUG, status, session->c, "h2_session(%ld): done", session->id); h2_session_close(session); h2_session_flush(session); /* hereafter session might be gone */ /* Make sure this connection gets closed properly. */ ap_update_child_status_from_conn(c->sbh, SERVER_CLOSING, c); c->keepalive = AP_CONN_CLOSE; Loading @@ -188,6 +184,8 @@ apr_status_t h2_conn_process(conn_rec *c, request_rec *r) c->cs->state = CONN_STATE_WRITE_COMPLETION; } h2_session_close(session); /* hereafter session will be gone */ return status; } Loading