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

Unified Diff: net/socket/ssl_client_socket.h

Issue 8857002: net: split the SSL session cache between incognito and normal. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ... Created 9 years 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
Index: net/socket/ssl_client_socket.h
diff --git a/net/socket/ssl_client_socket.h b/net/socket/ssl_client_socket.h
index 63ad321b6414f8feb44bd541cc14e2008dbc4290..92f72f98b6a5238076473bcd220bf201e521e620 100644
--- a/net/socket/ssl_client_socket.h
+++ b/net/socket/ssl_client_socket.h
@@ -38,18 +38,24 @@ struct SSLClientSocketContext {
OriginBoundCertService* origin_bound_cert_service_arg,
TransportSecurityState* transport_security_state_arg,
DnsCertProvenanceChecker* dns_cert_checker_arg,
- SSLHostInfoFactory* ssl_host_info_factory_arg)
+ SSLHostInfoFactory* ssl_host_info_factory_arg,
+ const std::string& ssl_session_cache_shard_arg)
: cert_verifier(cert_verifier_arg),
origin_bound_cert_service(origin_bound_cert_service_arg),
transport_security_state(transport_security_state_arg),
dns_cert_checker(dns_cert_checker_arg),
- ssl_host_info_factory(ssl_host_info_factory_arg) {}
+ ssl_host_info_factory(ssl_host_info_factory_arg),
+ ssl_session_cache_shard(ssl_session_cache_shard_arg) {}
CertVerifier* cert_verifier;
OriginBoundCertService* origin_bound_cert_service;
TransportSecurityState* transport_security_state;
DnsCertProvenanceChecker* dns_cert_checker;
SSLHostInfoFactory* ssl_host_info_factory;
+ // ssl_session_cache_shard is an opaque string that identifies a shard of the
+ // SSL session cache. SSL sockets with the same ssl_session_cache_shard may
+ // resume each other's SSL sessions but we'll never sessions between shards.
+ const std::string ssl_session_cache_shard;
};
// A client socket that uses SSL as the transport layer.
@@ -119,6 +125,10 @@ class NET_EXPORT SSLClientSocket : public SSLSocket {
static bool IgnoreCertError(int error, int load_flags);
+ // ClearSessionCache clears the SSL session cache, used to resume SSL
+ // sessions.
+ static void ClearSessionCache();
+
virtual bool was_npn_negotiated() const;
virtual bool set_was_npn_negotiated(bool negotiated);

Powered by Google App Engine
This is Rietveld 408576698