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

Issue 3028021: Alternate-Protocol was failing when going through Digest authenticating proxy. (Closed)

Created:
10 years, 5 months ago by cbentzel
Modified:
9 years, 7 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, darin-cc_chromium.org, Paweł Hajdan Jr.
Visibility:
Public.

Description

Digest authentication uses a uri field to prevent replay attacks. When authenticating to an HTTP proxy to establish a secure tunnel (via CONNECT), the uri should be the hostname of the server and the destination port, such as "www.example.com:443". When authenticating to an HTTP proxy for a non-secure content, the uri should be the path at the server, i.e. "/index.html". If the site we are trying to connect to previously advertised "Alternate-Protocol: 443:spdy-npn/1" a request to "http://www.example.com" will be attempted on a secure port. However, the URL passed into the digest authenticator was an unsecure one, and it decided to have a uri in the form "/index.html" rather than the correct "www.example.com:443". This causes persistent failure with the password and many password prompts. BUG=49865 TEST=Run with --use-spdy=npn, force connection through a digest authenticating proxy, and browse a site which advertises Alternate-Protocol through http URLs. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=54528

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 2

Patch Set 3 : '' #

Total comments: 5

Patch Set 4 : '' #

Total comments: 5

Patch Set 5 : '' #

Patch Set 6 : Added a comment about replacement strings, unit test fix on Linux+OSX. #

Patch Set 7 : Update unit test with spdy/2 #

Patch Set 8 : Merge with trunk. #

Patch Set 9 : Make unit test happy after merge. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+200 lines, -13 lines) Patch
M net/http/http_auth_handler_mock.h View 4 5 4 chunks +13 lines, -2 lines 0 comments Download
M net/http/http_auth_handler_mock.cc View 4 5 4 chunks +15 lines, -1 line 0 comments Download
M net/http/http_network_transaction.cc View 1 2 3 4 5 6 7 8 3 chunks +29 lines, -10 lines 0 comments Download
M net/http/http_network_transaction_unittest.cc View 4 5 6 7 8 1 chunk +142 lines, -0 lines 0 comments Download
M net/socket/socket_test_util.cc View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 11 (0 generated)
cbentzel
I just wanted to bring this to your attention - it needs some clean up ...
10 years, 5 months ago (2010-07-23 16:51:45 UTC) #1
Mike Belshe
LGTM if we add a unit test for it.... http://codereview.chromium.org/3028021/diff/4001/5001 File net/http/http_network_transaction.cc (right): http://codereview.chromium.org/3028021/diff/4001/5001#newcode140 net/http/http_network_transaction.cc:140: ...
10 years, 5 months ago (2010-07-23 17:37:59 UTC) #2
eroman
http://codereview.chromium.org/3028021/diff/9001/10001 File net/http/http_network_transaction.cc (left): http://codereview.chromium.org/3028021/diff/9001/10001#oldcode657 net/http/http_network_transaction.cc:657: url_canon::Replacements<char> replacements; Oh hm, I see this is a ...
10 years, 5 months ago (2010-07-28 00:23:15 UTC) #3
cbentzel
Thanks for the reviews from you. Eric, I wanted to address this one question you ...
10 years, 4 months ago (2010-07-28 18:50:41 UTC) #4
cbentzel
Ignore the portion of the comment after "or equivalent." - it was draft comment which ...
10 years, 4 months ago (2010-07-28 18:51:51 UTC) #5
cbentzel
I modified this CL to match Eric's style complaints, and added a unit test to ...
10 years, 4 months ago (2010-07-29 20:56:21 UTC) #6
vandebo (ex-Chrome)
LGTM http://codereview.chromium.org/3028021/diff/14001/15003 File net/http/http_network_transaction.cc (right): http://codereview.chromium.org/3028021/diff/14001/15003#newcode196 net/http/http_network_transaction.cc:196: replacements.SetSchemeStr(new_scheme); nit: can you not just pass in ...
10 years, 4 months ago (2010-07-29 21:06:32 UTC) #7
eroman
http://codereview.chromium.org/3028021/diff/14001/15003 File net/http/http_network_transaction.cc (right): http://codereview.chromium.org/3028021/diff/14001/15003#newcode196 net/http/http_network_transaction.cc:196: replacements.SetSchemeStr(new_scheme); On 2010/07/29 21:06:32, vandebo wrote: > nit: can ...
10 years, 4 months ago (2010-07-29 21:16:21 UTC) #8
eroman
lgtm
10 years, 4 months ago (2010-07-29 21:18:15 UTC) #9
cbentzel
I need to merge with trunk. I'll upload that patch and alert you if there ...
10 years, 4 months ago (2010-07-29 21:59:05 UTC) #10
cbentzel
10 years, 4 months ago (2010-07-31 11:54:36 UTC) #11
Merged again with trunk, which required a minor change to
http_network_transaction and a bit more of a change to the unit test due to
vandebo's reworking of proxy tunnels. 

It all works, waiting for try's and will actually land this one.

Powered by Google App Engine
This is Rietveld 408576698