Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(194)

Issue 2669313002: Revert of Allow proxying plaintext websockets over http/2 proxy (Closed)

Created:
3 years, 10 months ago by Adam Rice
Modified:
3 years, 10 months ago
Reviewers:
baranovich, Bence, mmenke
CC:
chromium-reviews, cbentzel+watch_chromium.org, Ryan Hamilton
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Revert of Allow proxying plaintext websockets over http/2 proxy (patchset #4 id:60001 of https://codereview.chromium.org/2642723008/ ) Reason for revert: I believe this is causing the crashes in http://crbug.com/685968. Original issue's description: > Allow proxying plaintext websockets over http/2 proxy > > Both secure and insecure websockets are proxied using HTTP CONNECT > tunnels. But if secure proxy supports HTTP/2 plaintext websockets won't > work (ERR_NOT_IMPLEMENTED will be returned). > > To initiate standard websocket handshake over established tunnel, in > HttpStreamFactoryImpl::Job::DoCreateStream we should follow > if (!using_spdy_) { ... } code branch, otherwise we end up in > SetSpdyHttpStreamOrBidirectionalStreamImpl which returns > ERR_NOT_IMPLEMENTED for websocket requests. > > For wss: scheme, everything works, since ProxyClientSocket (which is > HttpProxyClientSocketWrapper) is wrapped with SSLClientSocket > establishing TLS connection over the tunnel, > HttpStreamFactoryImpl::Job::DoInitConnectionComplete works as > expected. But for ws: scheme, |using_ssl_| is false, > |proxy_info_.is_https()| is true and we get into the branch where > |using_spdy_| is set to true (which is fine for non-websocket > requests). > > This change adds very cumbersome condition allowing plaintext > websockets requests over HTTP/2 proxies follow the same code path > secure websockets do. > > BUG=684681 > > TEST=HttpNetworkTransactionTest.PlaintextWebsocketOverSpdyProxy > > R=mmenke@chromium.org,ricea@chromium.org > > Review-Url: https://codereview.chromium.org/2642723008 > Cr-Commit-Position: refs/heads/master@{#446020} > Committed: https://chromium.googlesource.com/chromium/src/+/a027199ed55462ac711f04cc5c23eff59678beb1 TBR=mmenke@chromium.org,bnc@chromium.org,baranovich@yandex-team.ru # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=684681 Review-Url: https://codereview.chromium.org/2669313002 Cr-Commit-Position: refs/heads/master@{#447832} Committed: https://chromium.googlesource.com/chromium/src/+/c4e94751fb488deafe919a85f95037ac6c30491c

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1 line, -85 lines) Patch
M net/http/http_network_transaction_unittest.cc View 1 chunk +0 lines, -76 lines 0 comments Download
M net/http/http_stream_factory_impl_job.cc View 1 chunk +1 line, -9 lines 0 comments Download

Messages

Total messages: 8 (3 generated)
Adam Rice
Created Revert of Allow proxying plaintext websockets over http/2 proxy
3 years, 10 months ago (2017-02-02 19:23:45 UTC) #2
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2669313002/1
3 years, 10 months ago (2017-02-02 19:24:15 UTC) #3
Bence
LGTM
3 years, 10 months ago (2017-02-02 19:24:18 UTC) #4
Bence
LGTM
3 years, 10 months ago (2017-02-02 19:24:19 UTC) #5
commit-bot: I haz the power
3 years, 10 months ago (2017-02-02 20:35:16 UTC) #8
Message was sent while issue was closed.
Committed patchset #1 (id:1) as
https://chromium.googlesource.com/chromium/src/+/c4e94751fb488deafe919a85f950...

Powered by Google App Engine
This is Rietveld 408576698