On Wed, 17 Dec 2025 15:53:01 GMT, Daniel Jeliński <[email protected]> wrote:

> When a QUIC connection receives a CONNECTION_CLOSE frame, it is supposed to 
> enter the draining state, where all incoming (reordered / replayed) packets 
> are silently discarded. However, the current implementation removes the 
> connection from the endpoint, and reordered/replayed packets trigger sending 
> of a stateless reset instead. This patch fixes that issue.
> 
> I modified the `StatelessResetReceiptTest` to verify that the connection is 
> still registered with the endpoint after it enters the draining state. The 
> new test fails (most of the time) without the fix, passes with the fix.
> 
> Existing httpclient tests continue to pass.

Looks good to me. We now only enter draining when we receive 
ConnectionCloseFrame, if we haven't sent ConnectionCloseFrame already.
If we are already in draining state, nothing to do.
If we are already in closing state, then we stay in closing state.
Looks good.

-------------

Marked as reviewed by dfuchs (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/28874#pullrequestreview-3588930160

Reply via email to