Skip to content

fix(s2n-quic-core): allow connection migration when the port scope changes - #3166

Open
SanjoDeundiak wants to merge 1 commit into
aws:mainfrom
SanjoDeundiak:sanjo/port_scope_migration
Open

fix(s2n-quic-core): allow connection migration when the port scope changes#3166
SanjoDeundiak wants to merge 1 commit into
aws:mainfrom
SanjoDeundiak:sanjo/port_scope_migration

Conversation

@SanjoDeundiak

Copy link
Copy Markdown

Release Summary:

Resolved issues:

resolves #3040

Description of changes:

Currently server rejects the QUIC connection migration if the client port's scope has changed. It looks like the port scope change can normally happen during NAT rebinding, so I don't see why such migration attempt should be rejected. The QUIC RFC also has no suggestion to reject such migration.

Testing:

I don't think there was a test checking that migration is rejected when the port scope changes. Would be nice to have.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@SanjoDeundiak
SanjoDeundiak requested a review from a team as a code owner July 23, 2026 21:40
@SanjoDeundiak
SanjoDeundiak force-pushed the sanjo/port_scope_migration branch from 03cf308 to 2e08ef8 Compare July 23, 2026 21:41
@WesleyRosenblum

Copy link
Copy Markdown
Contributor

Thanks for the contribution. I'd be more comfortable for now with leaving the System vs NonSystem distinction in place, though User<->Dynamic can be removed

@SanjoDeundiak
SanjoDeundiak force-pushed the sanjo/port_scope_migration branch from 2e08ef8 to 7bd0c93 Compare July 24, 2026 16:06
@SanjoDeundiak

Copy link
Copy Markdown
Author

Thanks @WesleyRosenblum. That sounds reasonable. I updated the PR

@SanjoDeundiak
SanjoDeundiak force-pushed the sanjo/port_scope_migration branch from 7bd0c93 to 489a82a Compare July 24, 2026 23:02
Previously, any port scope change would result in rejected connection
migration, which could cause unexpected reachability issues. To avoid
that we now allow port scope change, unless it's system -> non-system
scope change or vice versa.
@SanjoDeundiak
SanjoDeundiak force-pushed the sanjo/port_scope_migration branch from 489a82a to 05af535 Compare August 7, 2026 19:18
@SanjoDeundiak

Copy link
Copy Markdown
Author

Hi @WesleyRosenblum, any updates on this one?

@WesleyRosenblum

Copy link
Copy Markdown
Contributor

Sorry I missed this. Would you mind adding a test for this, there should be a natural spot in the connection migration integration test: https://github.com/aws/s2n-quic/blob/main/quic/s2n-quic-tests/src/tests/connection_migration.rs

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.

Connection migration where the remote port crosses a scope boundary is rejected

2 participants