h2spec icon indicating copy to clipboard operation
h2spec copied to clipboard

Test http2/6.10/1 and others do not pay attention to MAX_HEADER_LIST_SIZE

Open fraenkel opened this issue 6 years ago • 0 comments

I was receiving failures when running http2/6.10/1 and a few other tests because the client is ignoring the negotiated header size. In particular with 6.10/1, sends dummy headers with a size that is based on the config's MaxHeaderLen. However, as part of the handshake, the server is sending 2018/07/12 09:12:54 http2: Framer 0xc0001bc000: wrote SETTINGS len=24, settings: MAX_FRAME_SIZE=1048576, MAX_CONCURRENT_STREAMS=250, MAX_HEADER_LIST_SIZE=2000, INITIAL_WINDOW_SIZE=1048576 I can adjust what the maximum header bytes are on the server side, just like the client can. However, there are other test cases that also treat the client value as gospel. If I set my server to 4000 to match the client, the server will fail this test with a COMPRESS_ERROR since the CONTINUATION frame has a length of 4387.

It seems that the client should respect the server setting where necessary.

fraenkel avatar Jul 12 '18 13:07 fraenkel