- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Tue, 12 May 2020 19:47:45 +0200
- To: Ian Clelland <iclelland@google.com>, Willy Tarreau <w@1wt.eu>
- Cc: HTTP Working Group <ietf-http-wg@w3.org>
On 12.05.2020 19:39, Ian Clelland wrote: > This is mentioned in > https://httpwg.org/http-extensions/draft-ietf-httpbis-header-structure.html#rfc.section.4.2 -- > "parsers MUST combine all lines in the same section (header or trailer) > that case-insensitively match the field name into one comma-separated > field-value", (with the warning given that strings split across multiple > field values will have "unpredictable results") -- So I don't think > you're allowed to parse them separately. If both exist in the same > message, they must be combined before parsing. > ... Indeed. Looking at this again, I realize that a paragraph below then confused me: "Strings split across multiple field lines will have unpredictable results, because comma(s) and whitespace inserted upon combination will become part of the string output by the parser. Since concatenation might be done by an upstream intermediary, the results are not under the control of the serializer or the parser." I read this to mean that errors might be detected early or not, but maybe this is just a warning that the actual string used for concatenation can vary? If that's the intent, I'd call that a spec bug. A string value split across multiple field instances is very clearly a violation of what HTTP says about list-shaped header fields, and not allowing a recipient to detect that seems incorrect to me. Best regards, Julian
Received on Tuesday, 12 May 2020 17:48:23 UTC