From: Stefan Eissing Date: Mon, 30 Apr 2018 12:46:50 +0000 (+0000) Subject: On the trunk: X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=77fd5a37b6c2a001f010ab0239bf3e538c6d52d9;p=apache On the trunk: mod_http2: restoring the v1.10.16 keepalive timeout behavioud of mod_http2 (to be verified). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1830562 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index c876a72caf..09343fa05e 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,9 @@ -*- coding: utf-8 -*- Changes with Apache 2.5.1 + *) mod_http2: restoring the v1.10.16 keepalive timeout behavioud of mod_http2 (to be verified). + [Stefan Eissing] + *) mod_http2: adding an abort function to slave connections' pools, so out-of-memory events lead to a control process abort, as on HTTP/1.x connections. [Stefan Eissing] diff --git a/modules/http2/h2_conn.c b/modules/http2/h2_conn.c index 26802e4727..68233641a4 100644 --- a/modules/http2/h2_conn.c +++ b/modules/http2/h2_conn.c @@ -229,7 +229,19 @@ apr_status_t h2_conn_run(struct h2_ctx *ctx, conn_rec *c) && mpm_state != AP_MPMQ_STOPPING); if (c->cs) { - c->cs->state = CONN_STATE_LINGER; + switch (session->state) { + case H2_SESSION_ST_INIT: + case H2_SESSION_ST_IDLE: + case H2_SESSION_ST_BUSY: + case H2_SESSION_ST_WAIT: + c->cs->state = CONN_STATE_WRITE_COMPLETION; + break; + case H2_SESSION_ST_CLEANUP: + case H2_SESSION_ST_DONE: + default: + c->cs->state = CONN_STATE_LINGER; + break; + } } return APR_SUCCESS;