summaryrefslogtreecommitdiffstats
path: root/net/socket/ssl_client_socket_pool.h
diff options
context:
space:
mode:
authoragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-18 15:44:44 +0000
committeragl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-11-18 15:44:44 +0000
commit3e35b224fd0c36f17f432f23e2eb3729667210b1 (patch)
tree9fc1ee327a5b872858aefe4bea60ded90080054e /net/socket/ssl_client_socket_pool.h
parentbe796bb642e82b4702fb84cfb451a09a37890c58 (diff)
downloadchromium_src-3e35b224fd0c36f17f432f23e2eb3729667210b1.zip
chromium_src-3e35b224fd0c36f17f432f23e2eb3729667210b1.tar.gz
chromium_src-3e35b224fd0c36f17f432f23e2eb3729667210b1.tar.bz2
net: Plumb DnsCertProvenanceChecker around.
DnsCertProvenanceChecker is introduced to abstract away the action of uploading reports. It's implemented by ChromeDnsCertProvenanceChecker which lives in a scoped_ptr off of a URLRequestContext. It's only active on the main context (i.e. not in incognito mode). This might change in the future, but it's a nice, conservative choice for the moment. The DnsCertProvenanceChecker is plumbed all the way to SSLClientSocket (via HttpCache) where it replaces the DnsRRResolver. Above SSLClientSocket, it's plumbed in addition to the DnsRRResolver because the later will end up going into SSLHostInfo in the future. At the moment, ChromeDnsCertProvenanceCheckerContext is just a skeleton to avoid putting too much real code in a plumbing job. BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66623 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket/ssl_client_socket_pool.h')
-rw-r--r--net/socket/ssl_client_socket_pool.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/socket/ssl_client_socket_pool.h b/net/socket/ssl_client_socket_pool.h
index 11cf250..5eb8594 100644
--- a/net/socket/ssl_client_socket_pool.h
+++ b/net/socket/ssl_client_socket_pool.h
@@ -24,6 +24,7 @@ namespace net {
class ClientSocketFactory;
class ConnectJobFactory;
+class DnsCertProvenanceChecker;
class DnsRRResolver;
class HostPortPair;
class HttpProxyClientSocketPool;
@@ -95,6 +96,7 @@ class SSLConnectJob : public ConnectJob {
ClientSocketFactory* client_socket_factory,
HostResolver* host_resolver,
DnsRRResolver* dnsrr_resolver,
+ DnsCertProvenanceChecker* dns_cert_checker,
SSLHostInfoFactory* ssl_host_info_factory,
Delegate* delegate,
NetLog* net_log);
@@ -144,6 +146,7 @@ class SSLConnectJob : public ConnectJob {
ClientSocketFactory* const client_socket_factory_;
HostResolver* const resolver_;
DnsRRResolver* const dnsrr_resolver_;
+ DnsCertProvenanceChecker* dns_cert_checker_;
SSLHostInfoFactory* const ssl_host_info_factory_;
State next_state_;
@@ -171,6 +174,7 @@ class SSLClientSocketPool : public ClientSocketPool,
ClientSocketPoolHistograms* histograms,
HostResolver* host_resolver,
DnsRRResolver* dnsrr_resolver,
+ DnsCertProvenanceChecker* dns_cert_checker,
SSLHostInfoFactory* ssl_host_info_factory,
ClientSocketFactory* client_socket_factory,
TCPClientSocketPool* tcp_pool,
@@ -244,6 +248,7 @@ class SSLClientSocketPool : public ClientSocketPool,
ClientSocketFactory* client_socket_factory,
HostResolver* host_resolver,
DnsRRResolver* dnsrr_resolver,
+ DnsCertProvenanceChecker* dns_cert_checker,
SSLHostInfoFactory* ssl_host_info_factory,
NetLog* net_log);
@@ -264,6 +269,7 @@ class SSLClientSocketPool : public ClientSocketPool,
ClientSocketFactory* const client_socket_factory_;
HostResolver* const host_resolver_;
DnsRRResolver* const dnsrr_resolver_;
+ DnsCertProvenanceChecker* const dns_cert_checker_;
SSLHostInfoFactory* const ssl_host_info_factory_;
base::TimeDelta timeout_;
NetLog* net_log_;