Policy response.raw_headers.tolerate() is used for tolerate from response header when it's invalid or odd.
Here are description with examples and what enhancements in 7.3 is.
Prior to 6.7.5.13
After6.7.5.13 and 7.3.
Prior to 6.7.5.13
There are a few options.
response.raw_headers.tolerate(none|continue|invalid_header)
• none -- indicates that no deviations are tolerated
• continue—indicates that the response header parsing should tolerate a continuation line(white space)prior to the start of the first header
• invalid_header—indicates that the response header parsing should tolerate invalid headers.
*invalid_header detects response header when
HTTP version is invalid, such as HTTP/1. 200OK in response status line. Normally it's HTTP/1.1
or
Response header is invalid, such as header1xxxxx. It's not separated with ':' Normally it's header1: xxxxx.
After 6.7.5.13 or 7.3
There are few options added and invalid_header behavior has been changed
response.raw_headers.tolerate(none|continue|invalid_header|invalid_status|incorrect_content_length|invalid_version)
Our reference document is here link, but actually invalid_version is not documented.
response.raw_headers.tolerate()
• invalid_status -- Response header parsing should tolerate invalid status.such as HTTP/1.1 abc 200OK.
• invalid_header -- Response header is invalid, such as header1xxxxx. It's not separated with ':" Normally it's header1: xxxxx.
• invalid_version -- HTTP version is invalid, such as HTTP/1. 200OK in response status line. Normally it's HTTP/1.1
• incorrect_content_length -- Indicates that the response header parsing should tolerate responses that exceed the specified length.