| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ | 5 #ifndef NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ |
| 6 #define NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ | 6 #define NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| 11 #include "base/memory/ref_counted.h" | 11 #include "base/memory/ref_counted.h" |
| 12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
| 13 #include "base/time.h" | 13 #include "base/time.h" |
| 14 #include "net/base/host_resolver.h" | 14 #include "net/base/host_resolver.h" |
| 15 #include "net/base/ssl_config_service.h" | 15 #include "net/base/ssl_config_service.h" |
| 16 #include "net/http/http_response_info.h" | 16 #include "net/http/http_response_info.h" |
| 17 #include "net/proxy/proxy_server.h" | 17 #include "net/proxy/proxy_server.h" |
| 18 #include "net/socket/ssl_client_socket.h" | 18 #include "net/socket/ssl_client_socket.h" |
| 19 #include "net/socket/client_socket_pool_base.h" | 19 #include "net/socket/client_socket_pool_base.h" |
| 20 #include "net/socket/client_socket_pool_histograms.h" | 20 #include "net/socket/client_socket_pool_histograms.h" |
| 21 #include "net/socket/client_socket_pool.h" | 21 #include "net/socket/client_socket_pool.h" |
| 22 | 22 |
| 23 namespace net { | 23 namespace net { |
| 24 | 24 |
| 25 class CertVerifier; | 25 class CertVerifier; |
| 26 class ClientSocketFactory; | 26 class ClientSocketFactory; |
| 27 class ConnectJobFactory; | 27 class ConnectJobFactory; |
| 28 class DnsCertProvenanceChecker; | 28 class DnsCertProvenanceChecker; |
| 29 class DnsRRResolver; | |
| 30 class HostPortPair; | 29 class HostPortPair; |
| 31 class HttpProxyClientSocketPool; | 30 class HttpProxyClientSocketPool; |
| 32 class HttpProxySocketParams; | 31 class HttpProxySocketParams; |
| 33 class SOCKSClientSocketPool; | 32 class SOCKSClientSocketPool; |
| 34 class SOCKSSocketParams; | 33 class SOCKSSocketParams; |
| 35 class SSLClientSocket; | 34 class SSLClientSocket; |
| 36 class SSLHostInfoFactory; | 35 class SSLHostInfoFactory; |
| 36 class TransportClientSocketPool; |
| 37 class TransportSecurityState; |
| 37 class TransportSocketParams; | 38 class TransportSocketParams; |
| 38 class TransportClientSocketPool; | |
| 39 | 39 |
| 40 // SSLSocketParams only needs the socket params for the transport socket | 40 // SSLSocketParams only needs the socket params for the transport socket |
| 41 // that will be used (denoted by |proxy|). | 41 // that will be used (denoted by |proxy|). |
| 42 class NET_EXPORT_PRIVATE SSLSocketParams | 42 class NET_EXPORT_PRIVATE SSLSocketParams |
| 43 : public base::RefCounted<SSLSocketParams> { | 43 : public base::RefCounted<SSLSocketParams> { |
| 44 public: | 44 public: |
| 45 SSLSocketParams(const scoped_refptr<TransportSocketParams>& transport_params, | 45 SSLSocketParams(const scoped_refptr<TransportSocketParams>& transport_params, |
| 46 const scoped_refptr<SOCKSSocketParams>& socks_params, | 46 const scoped_refptr<SOCKSSocketParams>& socks_params, |
| 47 const scoped_refptr<HttpProxySocketParams>& http_proxy_params, | 47 const scoped_refptr<HttpProxySocketParams>& http_proxy_params, |
| 48 ProxyServer::Scheme proxy, | 48 ProxyServer::Scheme proxy, |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 public: | 171 public: |
| 172 // Only the pools that will be used are required. i.e. if you never | 172 // Only the pools that will be used are required. i.e. if you never |
| 173 // try to create an SSL over SOCKS socket, |socks_pool| may be NULL. | 173 // try to create an SSL over SOCKS socket, |socks_pool| may be NULL. |
| 174 SSLClientSocketPool( | 174 SSLClientSocketPool( |
| 175 int max_sockets, | 175 int max_sockets, |
| 176 int max_sockets_per_group, | 176 int max_sockets_per_group, |
| 177 ClientSocketPoolHistograms* histograms, | 177 ClientSocketPoolHistograms* histograms, |
| 178 HostResolver* host_resolver, | 178 HostResolver* host_resolver, |
| 179 CertVerifier* cert_verifier, | 179 CertVerifier* cert_verifier, |
| 180 OriginBoundCertService* origin_bound_cert_service, | 180 OriginBoundCertService* origin_bound_cert_service, |
| 181 DnsRRResolver* dnsrr_resolver, | 181 TransportSecurityState* transport_security_state, |
| 182 DnsCertProvenanceChecker* dns_cert_checker, | 182 DnsCertProvenanceChecker* dns_cert_checker, |
| 183 SSLHostInfoFactory* ssl_host_info_factory, | 183 SSLHostInfoFactory* ssl_host_info_factory, |
| 184 ClientSocketFactory* client_socket_factory, | 184 ClientSocketFactory* client_socket_factory, |
| 185 TransportClientSocketPool* transport_pool, | 185 TransportClientSocketPool* transport_pool, |
| 186 SOCKSClientSocketPool* socks_pool, | 186 SOCKSClientSocketPool* socks_pool, |
| 187 HttpProxyClientSocketPool* http_proxy_pool, | 187 HttpProxyClientSocketPool* http_proxy_pool, |
| 188 SSLConfigService* ssl_config_service, | 188 SSLConfigService* ssl_config_service, |
| 189 NetLog* net_log); | 189 NetLog* net_log); |
| 190 | 190 |
| 191 virtual ~SSLClientSocketPool(); | 191 virtual ~SSLClientSocketPool(); |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 284 const scoped_refptr<SSLConfigService> ssl_config_service_; | 284 const scoped_refptr<SSLConfigService> ssl_config_service_; |
| 285 | 285 |
| 286 DISALLOW_COPY_AND_ASSIGN(SSLClientSocketPool); | 286 DISALLOW_COPY_AND_ASSIGN(SSLClientSocketPool); |
| 287 }; | 287 }; |
| 288 | 288 |
| 289 REGISTER_SOCKET_PARAMS_FOR_POOL(SSLClientSocketPool, SSLSocketParams); | 289 REGISTER_SOCKET_PARAMS_FOR_POOL(SSLClientSocketPool, SSLSocketParams); |
| 290 | 290 |
| 291 } // namespace net | 291 } // namespace net |
| 292 | 292 |
| 293 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ | 293 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ |
| OLD | NEW |