diff options
author | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-26 22:20:54 +0000 |
---|---|---|
committer | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-26 22:20:54 +0000 |
commit | 2ff8b3133033d6130ea87df3ab2290a226c7bca7 (patch) | |
tree | 74ee45d17428c359a0bd8db8b97e51eeb4b7c44c /net/spdy/spdy_framer.h | |
parent | 106113b3dde22f7d8b3a7f9a00a8884668cda782 (diff) | |
download | chromium_src-2ff8b3133033d6130ea87df3ab2290a226c7bca7.zip chromium_src-2ff8b3133033d6130ea87df3ab2290a226c7bca7.tar.gz chromium_src-2ff8b3133033d6130ea87df3ab2290a226c7bca7.tar.bz2 |
SPDY: Fix Alternate-Protocol.
(1) In DoInitConnection() we do the existing spdy session check. If it exists there, then we assuem it exists in DoSpdySendRequest(). Unfortunately, we didn't do the same check. Use a member variable to store the HostPortPair.
(2) In DoInitConnection(), we used the scheme://urlhost:urlport as the connection group. With Alternate-Protocol, we used the scheme://urlhost:urlport even though we were connecting to a different port, with a different protocol (TLS). This means we would mix conflicting sockets in the ClientSocketPool. I fix this by dropping scheme://, since it's unnecessary, and would cause us not to share SSL sockets in different connection groups (since the specified scheme might be http://, but due to Alternate-Protocol, we actually do an SSL connect). I also don't use the urlhost:urlport, but use the host:port that we actually connect to.
TODO(willchan):
Fix Alternate-Protocol so it works properly with proxies. I need to change CONNECT for http proxies and patch the SOCKs connects.
Review URL: http://codereview.chromium.org/1755005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45627 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy/spdy_framer.h')
-rw-r--r-- | net/spdy/spdy_framer.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/spdy/spdy_framer.h b/net/spdy/spdy_framer.h index b07dd02..2471c36 100644 --- a/net/spdy/spdy_framer.h +++ b/net/spdy/spdy_framer.h @@ -25,6 +25,7 @@ typedef struct z_stream_s z_stream; // Forward declaration for zlib. namespace net { class HttpNetworkLayer; +class HttpNetworkTransactionTest; class SpdyNetworkTransactionTest; } @@ -237,6 +238,7 @@ class SpdyFramer { protected: FRIEND_TEST(SpdyFramerTest, HeaderBlockBarfsOnOutOfOrderHeaders); friend class net::SpdyNetworkTransactionTest; + friend class net::HttpNetworkTransactionTest; friend class net::HttpNetworkLayer; // This is temporary for the server. friend class test::TestSpdyVisitor; friend void test::FramerSetEnableCompressionHelper(SpdyFramer* framer, @@ -292,4 +294,3 @@ class SpdyFramer { } // namespace spdy #endif // NET_SPDY_SPDY_FRAMER_H_ - |