summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValentin Bartenev <vbart@nginx.com>2015-11-13 20:10:50 +0300
committerValentin Bartenev <vbart@nginx.com>2015-11-13 20:10:50 +0300
commit8323cd693b493be7372d4bbb0aed4dcb768b87b8 (patch)
treeb41fa9f34dbe1d1393d710560a3af12364343f77
parent89a049be89a2d0507bf1e4558733934bf6597432 (diff)
HTTP/2: fixed invalid headers handling (ticket #831).
The r->invalid_header flag wasn't reset once an invalid header appeared in a request, resulting in all subsequent headers in the request were also marked as invalid.
-rw-r--r--src/http/v2/ngx_http_v2.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/http/v2/ngx_http_v2.c b/src/http/v2/ngx_http_v2.c
index 564f248c..e77c13a0 100644
--- a/src/http/v2/ngx_http_v2.c
+++ b/src/http/v2/ngx_http_v2.c
@@ -2949,6 +2949,8 @@ ngx_http_v2_validate_header(ngx_http_request_t *r, ngx_http_v2_header_t *header)
return NGX_ERROR;
}
+ r->invalid_header = 0;
+
cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module);
for (i = (header->name.data[0] == ':'); i != header->name.len; i++) {