Open
Description
Describe the bug
When a client doesn't share a port, we do no lookup based on CID to direct a packet to the correct connection. In this case, stateless resets work just fine even though they don't have the correct CID in the header (because the server didn't know it; it was stateless!).
But, when multiple clients share a port, the stateless reset packet will be dropped because we try do a lookup based on CID and can't find a match.
I realized this while discussing some HW offload stuff on https://github.com/microsoft/quic-offloads.
Affected OS
- Windows
- Linux
- macOS
- Other (specify below)
Additional OS information
No response
MsQuic version
main
Steps taken to reproduce bug
Run stateless reset tests on shared client ports.
Expected behavior
Immediately disconnect when stateless reset packet is received.
Actual outcome
Client has to wait on timeout instead.
Additional details
No response
Metadata
Metadata
Assignees
Type
Projects
Status
Should be written
Status
No status