Index: net/socket/ssl_client_socket.h |
diff --git a/net/socket/ssl_client_socket.h b/net/socket/ssl_client_socket.h |
index a43e58cc26b852fb86d92a1a5ac7c4e7c357b286..fa05b6fc15a54f7f0d7f488eaedfdd308fbe4664 100644 |
--- a/net/socket/ssl_client_socket.h |
+++ b/net/socket/ssl_client_socket.h |
@@ -18,6 +18,7 @@ namespace net { |
class CertVerifier; |
class CTVerifier; |
+class HostPortPair; |
class ServerBoundCertService; |
class SSLCertRequestInfo; |
struct SSLConfig; |
@@ -81,6 +82,30 @@ class NET_EXPORT SSLClientSocket : public SSLSocket { |
virtual bool WasNpnNegotiated() const OVERRIDE; |
virtual NextProto GetNegotiatedProtocol() const OVERRIDE; |
+ // Formats a unique key for the SSL session cache. This method |
+ // is necessary so that all classes create cache keys in a consistent |
+ // manner. |
+ // TODO(mshelley) This method will be deleted in an upcoming CL when |
+ // it will no longer be necessary to generate a cache key outside of |
+ // an SSLClientSocket. |
+ static std::string CreateSessionCacheKey( |
+ const HostPortPair& host_and_port, |
+ const std::string& ssl_session_cache_shard); |
+ |
+ // Returns true if there is a cache entry in the SSL session cache |
+ // for the cache key of the SSL socket. |
+ // |
+ // The cache key consists of a host and port concatenated with a session |
+ // cache shard. These two strings are passed to the constructor of most |
+ // subclasses of SSLClientSocket. |
+ virtual bool InSessionCache() const = 0; |
+ |
+ // Sets the callback to be run upon the connection's true handshake |
+ // completion. |
+ // TODO(mshelley) Provide a "result" input parameter to the callback. |
Ryan Sleevi
2014/07/25 01:36:35
Comment nit: "true handshake completion" is ambigu
mshelley
2014/07/26 00:58:27
Done.
|
+ virtual void SetHandshakeCompletionCallback( |
+ const base::Closure& callback) = 0; |
+ |
// Gets the SSL CertificateRequest info of the socket after Connect failed |
// with ERR_SSL_CLIENT_AUTH_CERT_NEEDED. |
virtual void GetSSLCertRequestInfo( |