summaryrefslogtreecommitdiffstats
path: root/net/http
diff options
context:
space:
mode:
authorrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-25 16:47:09 +0000
committerrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-25 16:47:09 +0000
commitb1ecc00cb7b889d6509cff17670dea346f7b8518 (patch)
treea29beb7600b0d355ea2f45932ffc352a51e547f2 /net/http
parentb1679ab9f7bf7e435e9feaa4e1ff9eeeb76ea851 (diff)
downloadchromium_src-b1ecc00cb7b889d6509cff17670dea346f7b8518.zip
chromium_src-b1ecc00cb7b889d6509cff17670dea346f7b8518.tar.gz
chromium_src-b1ecc00cb7b889d6509cff17670dea346f7b8518.tar.bz2
Add a command line option to enable SPDY request encoding for QUIC requests.
Update net-internals to display this value. Currently, requests on a QUIC stream are encoded with simple HTTP/1.1 headers (text based key: value pairs). However eventually, QUIC requests will use header framing. This command line flag switches to SPDY header framing which was recently implemented. Once we have the kinks sorted out we will remove support for HTTP framing and will remove this flag. Review URL: https://chromiumcodereview.appspot.com/12036090 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178839 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http')
-rw-r--r--net/http/http_network_session.cc7
-rw-r--r--net/http/http_network_session.h1
2 files changed, 6 insertions, 2 deletions
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
index b12a1ee..1111562 100644
--- a/net/http/http_network_session.cc
+++ b/net/http/http_network_session.cc
@@ -80,7 +80,8 @@ HttpNetworkSession::Params::Params()
spdy_initial_max_concurrent_streams(0),
spdy_max_concurrent_streams_limit(0),
time_func(&base::TimeTicks::Now),
- origin_port_to_force_quic_on(0) {
+ origin_port_to_force_quic_on(0),
+ use_spdy_over_quic(false) {
}
// TODO(mbelshe): Move the socket factories into HttpStreamFactory.
@@ -100,7 +101,8 @@ HttpNetworkSession::HttpNetworkSession(const Params& params)
quic_stream_factory_(params.host_resolver,
net::ClientSocketFactory::GetDefaultFactory(),
QuicRandom::GetInstance(),
- new QuicClock()),
+ new QuicClock(),
+ params.use_spdy_over_quic),
spdy_session_pool_(params.host_resolver,
params.ssl_config_service,
params.http_server_properties,
@@ -185,6 +187,7 @@ Value* HttpNetworkSession::QuicInfoToValue() const {
dict->SetBoolean("quic_enabled", params_.origin_port_to_force_quic_on != 0);
dict->SetInteger("origin_port_to_force_quic_on",
params_.origin_port_to_force_quic_on);
+ dict->SetBoolean("use_spdy_over_quic", params_.use_spdy_over_quic);
return dict;
}
diff --git a/net/http/http_network_session.h b/net/http/http_network_session.h
index 8a15c9c8..1004ab4 100644
--- a/net/http/http_network_session.h
+++ b/net/http/http_network_session.h
@@ -81,6 +81,7 @@ class NET_EXPORT HttpNetworkSession
SpdySessionPool::TimeFunc time_func;
std::string trusted_spdy_proxy;
uint16 origin_port_to_force_quic_on;
+ bool use_spdy_over_quic;
};
enum SocketPoolType {