diff options
author | Stefan Eissing <icing@apache.org> | 2018-04-09 09:39:08 +0000 |
---|---|---|
committer | Stefan Eissing <icing@apache.org> | 2018-04-09 09:39:08 +0000 |
commit | 03e3ef23a830d116b076d1c886a0d915a9552643 (patch) | |
tree | 4159aa63ff1e9370ec126b49eae7bb06ab83bb62 /modules/http2/h2_headers.c | |
parent | 4f11950dc9d024217314a3a9b9a5d897a292426f (diff) | |
download | httpd-03e3ef23a830d116b076d1c886a0d915a9552643.tar.gz |
On the trunk:
mod_http2: accurate reporting of h2 data input/output per request via mod_logio. Fixes
an issue where output sizes where counted n-times on reused slave connections. See
gituhub issue: https://github.com/icing/mod_h2/issues/158
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1828687 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'modules/http2/h2_headers.c')
-rw-r--r-- | modules/http2/h2_headers.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/modules/http2/h2_headers.c b/modules/http2/h2_headers.c index 94cb214aa3..f01ab88aab 100644 --- a/modules/http2/h2_headers.c +++ b/modules/http2/h2_headers.c @@ -111,7 +111,8 @@ apr_bucket *h2_bucket_headers_beam(struct h2_bucket_beam *beam, h2_headers *h2_headers_create(int status, apr_table_t *headers_in, - apr_table_t *notes, apr_pool_t *pool) + apr_table_t *notes, apr_off_t raw_bytes, + apr_pool_t *pool) { h2_headers *headers = apr_pcalloc(pool, sizeof(h2_headers)); headers->status = status; @@ -125,7 +126,7 @@ h2_headers *h2_headers_create(int status, apr_table_t *headers_in, h2_headers *h2_headers_rcreate(request_rec *r, int status, apr_table_t *header, apr_pool_t *pool) { - h2_headers *headers = h2_headers_create(status, header, r->notes, pool); + h2_headers *headers = h2_headers_create(status, header, r->notes, 0, pool); if (headers->status == HTTP_FORBIDDEN) { const char *cause = apr_table_get(r->notes, "ssl-renegotiate-forbidden"); if (cause) { @@ -149,7 +150,7 @@ h2_headers *h2_headers_rcreate(request_rec *r, int status, h2_headers *h2_headers_copy(apr_pool_t *pool, h2_headers *h) { return h2_headers_create(h->status, apr_table_copy(pool, h->headers), - apr_table_copy(pool, h->notes), pool); + apr_table_copy(pool, h->notes), h->raw_bytes, pool); } h2_headers *h2_headers_die(apr_status_t type, |