summaryrefslogtreecommitdiffstats
path: root/net/socket/client_socket_factory.cc
diff options
context:
space:
mode:
authorrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-25 16:31:59 +0000
committerrch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-25 16:31:59 +0000
commit25f47353818b7360eadae5867a6de8a550ecf628 (patch)
treec89364e01ee37a1a89f51299eb6af2b54aa3aaaf /net/socket/client_socket_factory.cc
parent9d1ae7314aa40c8cfbf426d0388045f1da5c85da (diff)
downloadchromium_src-25f47353818b7360eadae5867a6de8a550ecf628.zip
chromium_src-25f47353818b7360eadae5867a6de8a550ecf628.tar.gz
chromium_src-25f47353818b7360eadae5867a6de8a550ecf628.tar.bz2
Add a new method of ClientSocketFactory for clearing the cache used for SSL session resumption.
Review URL: http://codereview.chromium.org/6580006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76052 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket/client_socket_factory.cc')
-rw-r--r--net/socket/client_socket_factory.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/net/socket/client_socket_factory.cc b/net/socket/client_socket_factory.cc
index dfbe1f2..2eb90e5 100644
--- a/net/socket/client_socket_factory.cc
+++ b/net/socket/client_socket_factory.cc
@@ -72,6 +72,25 @@ class DefaultClientSocketFactory : public ClientSocketFactory {
return NULL;
#endif
}
+
+ // TODO(rch): This is only implemented for the NSS SSL library, which is the
+ /// default for Windows, Mac and Linux, but we should implement it everywhere.
+ void ClearSSLSessionCache() {
+#if defined(OS_WIN)
+ if (!g_use_system_ssl)
+ SSLClientSocketNSS::ClearSessionCache();
+#elif defined(USE_OPENSSL)
+ // no-op
+#elif defined(USE_NSS)
+ SSLClientSocketNSS::ClearSessionCache();
+#elif defined(OS_MACOSX)
+ if (!g_use_system_ssl)
+ SSLClientSocketNSS::ClearSessionCache();
+#else
+ NOTIMPLEMENTED();
+#endif
+ }
+
};
static base::LazyInstance<DefaultClientSocketFactory>