Skip to content

Add TargetHostName to QuicConnection - #84976

Merged
rzikm merged 12 commits into
dotnet:mainfrom
rzikm:80508-API-Proposal-Add-TargetHostName-to-QuicConnection
Apr 25, 2023
Merged

Add TargetHostName to QuicConnection#84976
rzikm merged 12 commits into
dotnet:mainfrom
rzikm:80508-API-Proposal-Add-TargetHostName-to-QuicConnection

Conversation

@rzikm

@rzikmrzikm commented Apr 18, 2023

Copy link
Copy Markdown
Member

Fixes#80508, also ports #82934 and #81631 to System.Net.Quic to unify behavior.

I discovered that we have some inconsistency in TargetHostName on SslStream side, we will report the encoded TargetHost on client side TargetHostName property and in client cert selection callback, but decoded on server side. So I made changes to always store user-provided TargetHost and encode it only for the parts we need it. I also added a SslStream test for cert validation with IDN domain.

Closes#55687 (added tests which exercise IDN in S.N.Q).

@ghost

Copy link
Copy Markdown

Note regarding the new-api-needs-documentation label:

This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change.

@rzikm
rzikm requested a review from wfurtApril 18, 2023 10:44
@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp run coreclr-libraries outerloop

@azure-pipelines

Copy link
Copy Markdown
No pipelines are associated with this pull request.

@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp list

@azure-pipelines

Copy link
Copy Markdown
CI/CD Pipelines for this repository:

@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries-coreclr outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@rzikm

rzikm commented Apr 19, 2023

Copy link
Copy Markdown
MemberAuthor

@rzikm
rzikm requested a review from a teamApril 19, 2023 07:19
@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries-coreclr outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@ManickaPManickaP left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Some comments, but looks good in general, thanks!
BTW, does this also fixes #55687 or is there still something else that needs to be done?

Comment threadsrc/libraries/System.Net.Quic/src/System/Net/Quic/QuicConnection.cs Outdated
Comment threadsrc/libraries/System.Net.Quic/src/System/Net/Quic/QuicConnection.cs Outdated
@rzikm

Copy link
Copy Markdown
MemberAuthor

BTW, does this also fixes #55687 or is there still something else that needs to be done?

I think this should close it, MsQuic is actually encoding/decoding punycode for us.

@ManickaPManickaP left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM, thank you!

@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries-coreclr outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries-coreclr outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@rzikm

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries-coreclr outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@wfurtwfurt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM

@rzikm
rzikm merged commit 25b61f6 into dotnet:mainApr 25, 2023
@ghostghost locked as resolved and limited conversation to collaborators May 25, 2023
@karelzkarelz added this to the 8.0.0 milestone May 27, 2023
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[API Proposal]: Add TargetHostName to QuicConnection QUIC: we should figure out how to properly handle international names in Quic/Http3

4 participants

@rzikm@ManickaP@wfurt@karelz