don't send server_name when literal IP #81631
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fixes #81590
I originally tried to use
IPAddress.TryParse()
But it allocates and drags in many dependencies.Windows SChannel already do this so we could possibly skip it. But the check should be reasonably cheap so I left it in for all platforms.
HttpClient always sets it for IP addresses. I was hoping we could check
Uri.HostNameType
but by the time it hits theSslStream
it is already passed as string and it is part of the connection pool processing. So left the fix-up only inSslStream
.We should probably do the same for Quic when we do #80508. (not sure if Quic allows to connect to empty string)
cc: @simonrozsival @nibanks