Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(dc): DcSupportedVersions transport parameter #2193

Merged
merged 12 commits into from
May 1, 2024

Conversation

WesleyRosenblum
Copy link
Contributor

@WesleyRosenblum WesleyRosenblum commented Apr 27, 2024

Description of changes:

Adds a dc_supported_versions transport parameter. This parameter is used by the client to indicate which versions of s2n-quic-dc it supports and by the server to indicate which version it is using.

Call-outs:

The server transport parameters are currently set on the TLS session before the client transport parameters are made available to the connection. This means that negotiating s2n-quic-dc versions using transport parameters would not be possible, as the version the server selects is dependent on the versions the client provided in the transport parameter. To address this, the server transport parameters that the TLS session is created with are stored within the session as a Vec<u8>. When the client transport parameters become available early in the handshake, they are provided to the SessionContext along with the Vec<u8> of server transport parameters. The connection is then allowed to append additional transport parameters to the Vec<u8>.

Testing:

Added some unit tests. More tests will be added once the parameter is used.

Is this a refactor change? If so, how have you proved that the intended behavior hasn't changed? -->

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

@WesleyRosenblum WesleyRosenblum marked this pull request as ready for review April 29, 2024 19:24
@WesleyRosenblum WesleyRosenblum requested a review from camshaft May 1, 2024 02:15
Copy link
Contributor

@camshaft camshaft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry couple of things

@WesleyRosenblum WesleyRosenblum requested a review from camshaft May 1, 2024 03:15
@WesleyRosenblum WesleyRosenblum merged commit 7188ce4 into main May 1, 2024
127 checks passed
@WesleyRosenblum WesleyRosenblum deleted the WesleyRosenblum/dctp branch May 1, 2024 03:50
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.

2 participants