]> git.kaiwu.me - nginx.git/commit
HTTP/3: restricted symbols in header names.
authorRoman Arutyunyan <arut@nginx.com>
Tue, 19 May 2020 12:34:00 +0000 (15:34 +0300)
committerRoman Arutyunyan <arut@nginx.com>
Tue, 19 May 2020 12:34:00 +0000 (15:34 +0300)
commitd25937c2b596013874fcb049f10b28270ee49e29
tree023bebd18eb7da6995d93c650f97bfcea9976683
parent6abb50658fcdf6ab92a4bc9042cd7dd9bb413850
HTTP/3: restricted symbols in header names.

As per HTTP/3 draft 27, a request or response containing uppercase header
field names MUST be treated as malformed.  Also, existing rules applied
when parsing HTTP/1 header names are also applied to HTTP/3 header names:

- null character is not allowed
- underscore character may or may not be treated as invalid depending on the
  value of "underscores_in_headers"
- all non-alphanumeric characters with the exception of '-' are treated as
  invalid

Also, the r->locase_header field is now filled while parsing an HTTP/3
header.

Error logging for invalid headers is fixed as well.
src/http/ngx_http_request.c
src/http/v3/ngx_http_v3.h
src/http/v3/ngx_http_v3_request.c