Re: draft-ietf-httpbis-header-structure: handling multiple field values

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