HTTP 1.1 parser whitespace in header value
Marin Stavrev
mstavrev at gmail.com
Wed May 6 12:45:01 UTC 2020
I had raised similar problem on December, 2019 -
http://mailman.nginx.org/pipermail/nginx-devel/2020-January/012942.html but
it had been put down as no other complains had been filed about it.
On Wed, May 6, 2020, 14:00 Андрей Аладьев <aladjev.andrew at gmail.com> wrote:
> Hello. I've read nginx HTTP parser and found the following line:
>
> /* header value */
> case sw_value:
> switch (ch) {
> case ' ':
> r->header_end = p;
> state = sw_space_after_value;
> break;
>
> It means that nginx HTTP parser will finish header value immediately after
> whitespace. But RFC 7230 declares the following:
>
> header-field = field-name ":" OWS field-value OWS
> field-value = *( field-content / obs-fold )
> field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]
> field-vchar = VCHAR / obs-text
>
> "field-vchar [ 1*( SP / HTAB ) field-vchar ]" I think this ABNF means
> header value can have SP or HTAB between visible chars.
>
> So it looks like nginx HTTP parser is broken. What do you think about it?
> Thank you.
> _______________________________________________
> nginx-devel mailing list
> nginx-devel at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20200506/50f357f1/attachment.htm>
More information about the nginx-devel
mailing list