diff options
author | Stefan Eissing <icing@apache.org> | 2023-01-19 16:01:46 +0000 |
---|---|---|
committer | Stefan Eissing <icing@apache.org> | 2023-01-19 16:01:46 +0000 |
commit | 3562db01e394a9cbfffb1bafff27e1b408a9b203 (patch) | |
tree | f615a8d8bb095642a7a382421a57fbf2bd2c996b | |
parent | fb705951b087effcb2edf71b4ca06130ba54bca9 (diff) | |
download | httpd-3562db01e394a9cbfffb1bafff27e1b408a9b203.tar.gz |
Merge of r1906775 from trunk:
*) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
reported in access logs and error documents. The processing of the
reset was correct, only unneccesary reporting was caused.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1906806 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | changes-entries/h2-rst-access-500-fix.txt | 4 | ||||
-rw-r--r-- | modules/http2/h2_c2_filter.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/changes-entries/h2-rst-access-500-fix.txt b/changes-entries/h2-rst-access-500-fix.txt new file mode 100644 index 0000000000..d165fa3bc8 --- /dev/null +++ b/changes-entries/h2-rst-access-500-fix.txt @@ -0,0 +1,4 @@ + *) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors + reported in access logs and error documents. The processing of the + reset was correct, only unneccesary reporting was caused. + [Stefan Eissing] diff --git a/modules/http2/h2_c2_filter.c b/modules/http2/h2_c2_filter.c index f537a19f07..37254fc1d7 100644 --- a/modules/http2/h2_c2_filter.c +++ b/modules/http2/h2_c2_filter.c @@ -615,7 +615,7 @@ apr_status_t h2_c2_filter_catch_h1_out(ap_filter_t* f, apr_bucket_brigade* bb) ap_assert(conn_ctx); H2_FILTER_LOG("c2_catch_h1_out", f->c, APLOG_TRACE2, 0, "check", bb); - if (!conn_ctx->has_final_response) { + if (!f->c->aborted && !conn_ctx->has_final_response) { if (!parser) { parser = apr_pcalloc(f->c->pool, sizeof(*parser)); parser->id = apr_psprintf(f->c->pool, "%s-%d", conn_ctx->id, conn_ctx->stream_id); |