> Am 05.10.2022 um 19:34 schrieb Stefan Eissing via dev <dev@httpd.apache.org>:
> 
> 
> 
>> Am 05.10.2022 um 18:48 schrieb Eric Covener <cove...@gmail.com>:
>> 
>> On Wed, Oct 5, 2022 at 12:44 PM Roy T. Fielding <field...@gbiv.com> wrote:
>>> 
>>>> On Sep 26, 2022, at 5:29 AM, ic...@apache.org wrote:
>>>> 
>>>> Author: icing
>>>> Date: Mon Sep 26 12:29:47 2022
>>>> New Revision: 1904269
>>>> 
>>>> URL: http://svn.apache.org/viewvc?rev=1904269&view=rev
>>>> Log:
>>>> *) mod_http2: new directive "H2HeaderStrictness" to control the compliance
>>>>   level of header checks as defined in the HTTP/2 RFCs. Default is 7540.
>>>>   9113 activates the checks for forbidden leading/trailing whitespace in
>>>>   field values (available from nghttp2 v1.50.0 on).
>>> 
>>> I am not seeing why that should be optional. It adds overhead, but it 
>>> reduces
>>> variability (for HPACK) and might prevent some downstream vulnerabilities, 
>>> IIRC.
>>> Maybe an internal switch for testing with default on?

To add some more detail:

- rfc9113 ch 8.2.1 states: "A field value MUST NOT start or end with an ASCII 
whitespace character"
- nghttp2 v1.49.0 implemented that check, non-optional. Things broke.
- nghttp2 v1.50.0 added to its API so that the application can control the 
behaviour on request of Daniel Stenberg
- I added "H2HeaderStrictness" (in trunk only for now) to steer that.

This is not a normalization issue, it's a hard "MUST NOT" e.g. rejection of the 
request/response carrying such a field. While I agree that there are many 
advantages in having fields more strict, the way to get there is not clear.

I am totally in favour of avoiding "H2HeaderStrictness", but just enforcing 
rfc9113 here will not do. What would our response be for people whose legacy 
clients/fronted applications will no longer work?

- Stefan

>> 
>> +1 for opt-out.
> 
> People downgraded nghttp2 v1.49 where this was on by default because of 
> various interop problems.
> 
> I am all for strictness, but this improvement in the rfc seems to have thorns 
> for users.
> 
> - Stefan

Reply via email to