Skip to content

Changed test 6.9.1.3 to a POST#134

Open
bryancall wants to merge 1 commit intosummerwind:masterfrom
bryancall:fix_6_9_1_3
Open

Changed test 6.9.1.3 to a POST#134
bryancall wants to merge 1 commit intosummerwind:masterfrom
bryancall:fix_6_9_1_3

Conversation

@bryancall
Copy link

While testing h2spec 2.6.0 I ran into an error were the server would respond before it received the WINDOW_UPDATE frames.

Before the change:

07:12:45 zeus:((v2.6.0))~/dev/h2spec$ ./h2spec -vkt -p 4443 -P /cache/1024 http2/6.9.1/3
Hypertext Transfer Protocol Version 2 (HTTP/2)
  6. Frame Definitions
    6.9. WINDOW_UPDATE
      6.9.1. The Flow-Control Window
             [send] SETTINGS Frame (length:6, flags:0x00, stream_id:0)
             [recv] SETTINGS Frame (length:18, flags:0x00, stream_id:0)
             [send] SETTINGS Frame (length:0, flags:0x01, stream_id:0)
             [recv] SETTINGS Frame (length:0, flags:0x01, stream_id:0)
             [send] HEADERS Frame (length:24, flags:0x04, stream_id:1)
             [send] WINDOW_UPDATE Frame (length:4, flags:0x00, stream_id:1)
             [send] WINDOW_UPDATE Frame (length:4, flags:0x00, stream_id:1)
             [recv] HEADERS Frame (length:148, flags:0x04, stream_id:1)
             [recv] DATA Frame (length:1024, flags:0x01, stream_id:1)
             [recv] Timeout
        using source address 127.0.0.1:53226
        × 3: Sends multiple WINDOW_UPDATE frames increasing the flow control window to above 2^31-1 on a stream
          -> The endpoint MUST sends a RST_STREAM frame with a FLOW_CONTROL_ERROR code.
             Expected: RST_STREAM Frame (Error Code: FLOW_CONTROL_ERROR)
               Actual: DATA Frame (length:1024, flags:0x01, stream_id:1)

Failures:

Hypertext Transfer Protocol Version 2 (HTTP/2)
  6. Frame Definitions
    6.9. WINDOW_UPDATE
      6.9.1. The Flow-Control Window
        using source address 127.0.0.1:53226
        × 3: Sends multiple WINDOW_UPDATE frames increasing the flow control window to above 2^31-1 on a stream
          -> The endpoint MUST sends a RST_STREAM frame with a FLOW_CONTROL_ERROR code.
             Expected: RST_STREAM Frame (Error Code: FLOW_CONTROL_ERROR)
               Actual: DATA Frame (length:1024, flags:0x01, stream_id:1)

Finished in 2.0084 seconds
1 tests, 0 passed, 0 skipped, 1 failed

After the change:

07:11:31 zeus:(fix_6_9_1_3)~/dev/h2spec$ ./h2spec -vkt -p 4443 -P /cache/1024 http2/6.9.1/3
Hypertext Transfer Protocol Version 2 (HTTP/2)
  6. Frame Definitions
    6.9. WINDOW_UPDATE
      6.9.1. The Flow-Control Window
             source address: 127.0.0.1:45728
             [send] SETTINGS Frame (length:6, flags:0x00, stream_id:0)
             [recv] SETTINGS Frame (length:18, flags:0x00, stream_id:0)
             [send] SETTINGS Frame (length:0, flags:0x01, stream_id:0)
             [recv] SETTINGS Frame (length:0, flags:0x01, stream_id:0)
             [send] HEADERS Frame (length:24, flags:0x05, stream_id:1)
             [send] WINDOW_UPDATE Frame (length:4, flags:0x00, stream_id:1)
             [send] WINDOW_UPDATE Frame (length:4, flags:0x00, stream_id:1)
             [send] DATA Frame (length:4, flags:0x01, stream_id:1)
             [recv] RST_STREAM Frame (length:4, flags:0x00, stream_id:1)
        ✔ 3: Sends multiple WINDOW_UPDATE frames increasing the flow control window to above 2^31-1 on a stream

Finished in 0.0053 seconds
1 tests, 1 passed, 0 skipped, 0 failed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant