summaryrefslogtreecommitdiffstats
path: root/net/spdy/spdy_framer.h
diff options
context:
space:
mode:
authorwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-26 22:20:54 +0000
committerwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-26 22:20:54 +0000
commit2ff8b3133033d6130ea87df3ab2290a226c7bca7 (patch)
tree74ee45d17428c359a0bd8db8b97e51eeb4b7c44c /net/spdy/spdy_framer.h
parent106113b3dde22f7d8b3a7f9a00a8884668cda782 (diff)
downloadchromium_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.h3
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_
-