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

Unified Diff: net/quic/quic_stream_factory.cc

Issue 149413008: QUIC - Start the process for reading crypto config data from disk cache (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merging with TOT Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/crypto/quic_crypto_client_config.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_stream_factory.cc
diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc
index 27ce25d344127deaca02ada8fef68c64717ea944..51681adfbf9c2e7adee54aa1d6420d7483dc758a 100644
--- a/net/quic/quic_stream_factory.cc
+++ b/net/quic/quic_stream_factory.cc
@@ -327,6 +327,12 @@ int QuicStreamFactory::Create(const HostPortProxyPair& host_port_proxy_pair,
return ERR_IO_PENDING;
}
+ // Create crypto config and start the process of loading QUIC server
+ // information from disk cache.
+ QuicCryptoClientConfig* crypto_config =
+ GetOrCreateCryptoConfig(host_port_proxy_pair);
+ DCHECK(crypto_config);
+
scoped_ptr<Job> job(new Job(this, host_resolver_, host_port_proxy_pair,
is_https, cert_verifier, net_log));
int rv = job->Run(base::Bind(&QuicStreamFactory::OnJobComplete,
@@ -627,7 +633,13 @@ QuicCryptoClientConfig* QuicStreamFactory::GetOrCreateCryptoConfig(
} else {
// TODO(rtenneti): if two quic_sessions for the same host_port_proxy_pair
// share the same crypto_config, will it cause issues?
- crypto_config = new QuicCryptoClientConfig(quic_server_info_factory_);
+ crypto_config = new QuicCryptoClientConfig();
+ if (quic_server_info_factory_) {
+ QuicCryptoClientConfig::CachedState* cached =
+ crypto_config->Create(host_port_proxy_pair.first.host(),
+ quic_server_info_factory_);
+ DCHECK(cached);
+ }
crypto_config->SetDefaults();
all_crypto_configs_[host_port_proxy_pair] = crypto_config;
PopulateFromCanonicalConfig(host_port_proxy_pair, crypto_config);
« no previous file with comments | « net/quic/crypto/quic_crypto_client_config.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698