clovis/sandwich: request_track should allow more whitespace within headers |
|||
Issue descriptionResponse headers allow whitespace as part of the separator between values besides the usual separator (comma, semicolon, etc.) The standard allows arbitrary number of Linear White Space (LWS) to be around a separator. LWS is defined as: LWS ::= [CR LF] 1*( SP | HT ) where: CR = <US-ASCII CR, carriage return (13)> LF = <US-ASCII LF, linefeed (10)> SP = <US-ASCII SP, space (32)> HT = <US-ASCII HT, horizontal-tab (9)> I'm wondering why they did not allow CRLF without a following space, but nevermind. Example that I saw today on CNN: "Cache-Control: max-age=3600, no-transform, public"
,
May 26 2016
,
May 26 2016
gabadie@ noted offline that things are already properly parsed in the trace. We might still need to refine it if we modify headers in cache (which are stored in the raw-ish form)
,
May 26 2016
Is this really just a problem in how we split them in request_track:GetResponseHeaderValue? As gabadie@ said, the headers are already parsed for us, but the contents of the headers are not which means we may not be searching correctly for values in the referenced code.
,
May 26 2016
as I understand what gabadie@ said, the values are also parsed and re-joined with proper delimiters For extra "convenience", delimiters depend on header type, but that's a separate issue.
,
Jul 24
|
|||
►
Sign in to add a comment |
|||
Comment 1 by pasko@chromium.org
, May 26 2016Blocking: 582080