Don't replace all connection headers when sending h2c upgrade request#7824
Merged
Merged
Conversation
normanmaurer
requested changes
Mar 30, 2018
Member
There was a problem hiding this comment.
You need to release this one
Member
There was a problem hiding this comment.
Also call channel.finish() and assert the return value
Motivation: There may be meaningful 'connection' headers that exist on a request that is used to attempt a HTTP/1.x upgrade request that will be clobbered. Modifications: HttpClientUpgradeHandler uses the `HttpHeaders.add` instead of `HttpHeaders.set` when adding the 'upgrade' field. Result: Fixes netty#7823 Existing 'connection' headers are preserved.
715c16b to
d599734
Compare
Contributor
Author
|
@normanmaurer, done. One of these days my tests cases will release everything the first time. 😄 |
Member
Member
|
I rechecked the RFC (and other implementations) and its definitely allowed to have multiple connection header values (even when upgrade). |
Contributor
Author
|
Thanks for double checking @normanmaurer, and thanks again for the review. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Motivation:
There may be meaningful 'connection' headers that exist on a request
that is used to attempt a HTTP/1.x upgrade request that will be
clobbered.
Modifications:
HttpClientUpgradeHandler uses the
HttpHeaders.addinstead ofHttpHeaders.setwhen adding the 'upgrade' field.Result:
Fixes #7823
Existing 'connection' headers are preserved.