http2-katana
http2-katana copied to clipboard
Spec discrepancy
The first use of a new stream identifier implicitly closes all streams in the "idle" state that might have been initiated by that peer with a lower-valued stream identifier. For example, if a client sends a HEADERS [HEADERS] frame on stream 7 without ever sending a frame on stream 5, then stream 5 transitions to the "closed" state when the first frame for stream 7 is sent or received.
What is the discrepancy?
Your impl assumes that stream with id = 5 would be opened ONLY after id = 3. Situation when stream with id = 7 after id = 3 will not be handled correctly, because id = 5 will be in closed state.