| 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 #include "net/socket/client_socket_pool_manager_impl.h" | 5 #include "net/socket/client_socket_pool_manager_impl.h" | 
| 6 | 6 | 
| 7 #include "base/logging.h" | 7 #include "base/logging.h" | 
| 8 #include "base/values.h" | 8 #include "base/values.h" | 
| 9 #include "net/base/ssl_config_service.h" | 9 #include "net/base/ssl_config_service.h" | 
| 10 #include "net/http/http_proxy_client_socket_pool.h" | 10 #include "net/http/http_proxy_client_socket_pool.h" | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
| 32 | 32 | 
| 33 }  // namespace | 33 }  // namespace | 
| 34 | 34 | 
| 35 ClientSocketPoolManagerImpl::ClientSocketPoolManagerImpl( | 35 ClientSocketPoolManagerImpl::ClientSocketPoolManagerImpl( | 
| 36     NetLog* net_log, | 36     NetLog* net_log, | 
| 37     ClientSocketFactory* socket_factory, | 37     ClientSocketFactory* socket_factory, | 
| 38     HostResolver* host_resolver, | 38     HostResolver* host_resolver, | 
| 39     CertVerifier* cert_verifier, | 39     CertVerifier* cert_verifier, | 
| 40     OriginBoundCertService* origin_bound_cert_service, | 40     OriginBoundCertService* origin_bound_cert_service, | 
| 41     TransportSecurityState* transport_security_state, | 41     TransportSecurityState* transport_security_state, | 
| 42     DnsCertProvenanceChecker* dns_cert_checker, |  | 
| 43     SSLHostInfoFactory* ssl_host_info_factory, | 42     SSLHostInfoFactory* ssl_host_info_factory, | 
| 44     const std::string& ssl_session_cache_shard, | 43     const std::string& ssl_session_cache_shard, | 
| 45     ProxyService* proxy_service, | 44     ProxyService* proxy_service, | 
| 46     SSLConfigService* ssl_config_service) | 45     SSLConfigService* ssl_config_service) | 
| 47     : net_log_(net_log), | 46     : net_log_(net_log), | 
| 48       socket_factory_(socket_factory), | 47       socket_factory_(socket_factory), | 
| 49       host_resolver_(host_resolver), | 48       host_resolver_(host_resolver), | 
| 50       cert_verifier_(cert_verifier), | 49       cert_verifier_(cert_verifier), | 
| 51       origin_bound_cert_service_(origin_bound_cert_service), | 50       origin_bound_cert_service_(origin_bound_cert_service), | 
| 52       transport_security_state_(transport_security_state), | 51       transport_security_state_(transport_security_state), | 
| 53       dns_cert_checker_(dns_cert_checker), |  | 
| 54       ssl_host_info_factory_(ssl_host_info_factory), | 52       ssl_host_info_factory_(ssl_host_info_factory), | 
| 55       ssl_session_cache_shard_(ssl_session_cache_shard), | 53       ssl_session_cache_shard_(ssl_session_cache_shard), | 
| 56       proxy_service_(proxy_service), | 54       proxy_service_(proxy_service), | 
| 57       ssl_config_service_(ssl_config_service), | 55       ssl_config_service_(ssl_config_service), | 
| 58       transport_pool_histograms_("TCP"), | 56       transport_pool_histograms_("TCP"), | 
| 59       transport_socket_pool_(new TransportClientSocketPool( | 57       transport_socket_pool_(new TransportClientSocketPool( | 
| 60           max_sockets_per_pool(), max_sockets_per_group(), | 58           max_sockets_per_pool(), max_sockets_per_group(), | 
| 61           &transport_pool_histograms_, | 59           &transport_pool_histograms_, | 
| 62           host_resolver, | 60           host_resolver, | 
| 63           socket_factory_, | 61           socket_factory_, | 
| 64           net_log)), | 62           net_log)), | 
| 65       ssl_pool_histograms_("SSL2"), | 63       ssl_pool_histograms_("SSL2"), | 
| 66       ssl_socket_pool_(new SSLClientSocketPool( | 64       ssl_socket_pool_(new SSLClientSocketPool( | 
| 67           max_sockets_per_pool(), max_sockets_per_group(), | 65           max_sockets_per_pool(), max_sockets_per_group(), | 
| 68           &ssl_pool_histograms_, | 66           &ssl_pool_histograms_, | 
| 69           host_resolver, | 67           host_resolver, | 
| 70           cert_verifier, | 68           cert_verifier, | 
| 71           origin_bound_cert_service, | 69           origin_bound_cert_service, | 
| 72           transport_security_state, | 70           transport_security_state, | 
| 73           dns_cert_checker, |  | 
| 74           ssl_host_info_factory, | 71           ssl_host_info_factory, | 
| 75           ssl_session_cache_shard, | 72           ssl_session_cache_shard, | 
| 76           socket_factory, | 73           socket_factory, | 
| 77           transport_socket_pool_.get(), | 74           transport_socket_pool_.get(), | 
| 78           NULL /* no socks proxy */, | 75           NULL /* no socks proxy */, | 
| 79           NULL /* no http proxy */, | 76           NULL /* no http proxy */, | 
| 80           ssl_config_service, | 77           ssl_config_service, | 
| 81           net_log)), | 78           net_log)), | 
| 82       transport_for_socks_pool_histograms_("TCPforSOCKS"), | 79       transport_for_socks_pool_histograms_("TCPforSOCKS"), | 
| 83       socks_pool_histograms_("SOCK"), | 80       socks_pool_histograms_("SOCK"), | 
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 284           std::make_pair( | 281           std::make_pair( | 
| 285               http_proxy, | 282               http_proxy, | 
| 286               new SSLClientSocketPool( | 283               new SSLClientSocketPool( | 
| 287                   max_sockets_per_proxy_server(), | 284                   max_sockets_per_proxy_server(), | 
| 288                   max_sockets_per_group(), | 285                   max_sockets_per_group(), | 
| 289                   &ssl_for_https_proxy_pool_histograms_, | 286                   &ssl_for_https_proxy_pool_histograms_, | 
| 290                   host_resolver_, | 287                   host_resolver_, | 
| 291                   cert_verifier_, | 288                   cert_verifier_, | 
| 292                   origin_bound_cert_service_, | 289                   origin_bound_cert_service_, | 
| 293                   transport_security_state_, | 290                   transport_security_state_, | 
| 294                   dns_cert_checker_, |  | 
| 295                   ssl_host_info_factory_, | 291                   ssl_host_info_factory_, | 
| 296                   ssl_session_cache_shard_, | 292                   ssl_session_cache_shard_, | 
| 297                   socket_factory_, | 293                   socket_factory_, | 
| 298                   tcp_https_ret.first->second /* https proxy */, | 294                   tcp_https_ret.first->second /* https proxy */, | 
| 299                   NULL /* no socks proxy */, | 295                   NULL /* no socks proxy */, | 
| 300                   NULL /* no http proxy */, | 296                   NULL /* no http proxy */, | 
| 301                   ssl_config_service_, net_log_))); | 297                   ssl_config_service_, net_log_))); | 
| 302   DCHECK(tcp_https_ret.second); | 298   DCHECK(tcp_https_ret.second); | 
| 303 | 299 | 
| 304   std::pair<HTTPProxySocketPoolMap::iterator, bool> ret = | 300   std::pair<HTTPProxySocketPoolMap::iterator, bool> ret = | 
| (...skipping 19 matching lines...) Expand all  Loading... | 
| 324   if (it != ssl_socket_pools_for_proxies_.end()) | 320   if (it != ssl_socket_pools_for_proxies_.end()) | 
| 325     return it->second; | 321     return it->second; | 
| 326 | 322 | 
| 327   SSLClientSocketPool* new_pool = new SSLClientSocketPool( | 323   SSLClientSocketPool* new_pool = new SSLClientSocketPool( | 
| 328       max_sockets_per_proxy_server(), max_sockets_per_group(), | 324       max_sockets_per_proxy_server(), max_sockets_per_group(), | 
| 329       &ssl_pool_histograms_, | 325       &ssl_pool_histograms_, | 
| 330       host_resolver_, | 326       host_resolver_, | 
| 331       cert_verifier_, | 327       cert_verifier_, | 
| 332       origin_bound_cert_service_, | 328       origin_bound_cert_service_, | 
| 333       transport_security_state_, | 329       transport_security_state_, | 
| 334       dns_cert_checker_, |  | 
| 335       ssl_host_info_factory_, | 330       ssl_host_info_factory_, | 
| 336       ssl_session_cache_shard_, | 331       ssl_session_cache_shard_, | 
| 337       socket_factory_, | 332       socket_factory_, | 
| 338       NULL, /* no tcp pool, we always go through a proxy */ | 333       NULL, /* no tcp pool, we always go through a proxy */ | 
| 339       GetSocketPoolForSOCKSProxy(proxy_server), | 334       GetSocketPoolForSOCKSProxy(proxy_server), | 
| 340       GetSocketPoolForHTTPProxy(proxy_server), | 335       GetSocketPoolForHTTPProxy(proxy_server), | 
| 341       ssl_config_service_, | 336       ssl_config_service_, | 
| 342       net_log_); | 337       net_log_); | 
| 343 | 338 | 
| 344   std::pair<SSLSocketPoolMap::iterator, bool> ret = | 339   std::pair<SSLSocketPoolMap::iterator, bool> ret = | 
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 390   // We should not flush the socket pools if we added trust to a | 385   // We should not flush the socket pools if we added trust to a | 
| 391   // cert. | 386   // cert. | 
| 392   // | 387   // | 
| 393   // Since the OnCertTrustChanged method doesn't tell us what | 388   // Since the OnCertTrustChanged method doesn't tell us what | 
| 394   // kind of trust change it is, we have to flush the socket | 389   // kind of trust change it is, we have to flush the socket | 
| 395   // pools to be safe. | 390   // pools to be safe. | 
| 396   FlushSocketPools(); | 391   FlushSocketPools(); | 
| 397 } | 392 } | 
| 398 | 393 | 
| 399 }  // namespace net | 394 }  // namespace net | 
| OLD | NEW | 
|---|