| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/ssl_client_socket_pool.h" | 5 #include "net/socket/ssl_client_socket_pool.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 BoundNetLog::Make(net_log, NetLog::SOURCE_CONNECT_JOB)), | 117 BoundNetLog::Make(net_log, NetLog::SOURCE_CONNECT_JOB)), |
| 118 params_(params), | 118 params_(params), |
| 119 transport_pool_(transport_pool), | 119 transport_pool_(transport_pool), |
| 120 socks_pool_(socks_pool), | 120 socks_pool_(socks_pool), |
| 121 http_proxy_pool_(http_proxy_pool), | 121 http_proxy_pool_(http_proxy_pool), |
| 122 client_socket_factory_(client_socket_factory), | 122 client_socket_factory_(client_socket_factory), |
| 123 context_(context.cert_verifier, | 123 context_(context.cert_verifier, |
| 124 context.channel_id_service, | 124 context.channel_id_service, |
| 125 context.transport_security_state, | 125 context.transport_security_state, |
| 126 context.cert_transparency_verifier, | 126 context.cert_transparency_verifier, |
| 127 context.cert_policy_enforcer, | 127 context.ct_policy_enforcer, |
| 128 (params->privacy_mode() == PRIVACY_MODE_ENABLED | 128 (params->privacy_mode() == PRIVACY_MODE_ENABLED |
| 129 ? "pm/" + context.ssl_session_cache_shard | 129 ? "pm/" + context.ssl_session_cache_shard |
| 130 : context.ssl_session_cache_shard)), | 130 : context.ssl_session_cache_shard)), |
| 131 callback_( | 131 callback_( |
| 132 base::Bind(&SSLConnectJob::OnIOComplete, base::Unretained(this))) { | 132 base::Bind(&SSLConnectJob::OnIOComplete, base::Unretained(this))) { |
| 133 } | 133 } |
| 134 | 134 |
| 135 SSLConnectJob::~SSLConnectJob() { | 135 SSLConnectJob::~SSLConnectJob() { |
| 136 } | 136 } |
| 137 | 137 |
| (...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 503 SSLClientSocketPool::SSLConnectJobFactory::~SSLConnectJobFactory() { | 503 SSLClientSocketPool::SSLConnectJobFactory::~SSLConnectJobFactory() { |
| 504 } | 504 } |
| 505 | 505 |
| 506 SSLClientSocketPool::SSLClientSocketPool( | 506 SSLClientSocketPool::SSLClientSocketPool( |
| 507 int max_sockets, | 507 int max_sockets, |
| 508 int max_sockets_per_group, | 508 int max_sockets_per_group, |
| 509 CertVerifier* cert_verifier, | 509 CertVerifier* cert_verifier, |
| 510 ChannelIDService* channel_id_service, | 510 ChannelIDService* channel_id_service, |
| 511 TransportSecurityState* transport_security_state, | 511 TransportSecurityState* transport_security_state, |
| 512 CTVerifier* cert_transparency_verifier, | 512 CTVerifier* cert_transparency_verifier, |
| 513 CertPolicyEnforcer* cert_policy_enforcer, | 513 CTPolicyEnforcer* ct_policy_enforcer, |
| 514 const std::string& ssl_session_cache_shard, | 514 const std::string& ssl_session_cache_shard, |
| 515 ClientSocketFactory* client_socket_factory, | 515 ClientSocketFactory* client_socket_factory, |
| 516 TransportClientSocketPool* transport_pool, | 516 TransportClientSocketPool* transport_pool, |
| 517 SOCKSClientSocketPool* socks_pool, | 517 SOCKSClientSocketPool* socks_pool, |
| 518 HttpProxyClientSocketPool* http_proxy_pool, | 518 HttpProxyClientSocketPool* http_proxy_pool, |
| 519 SSLConfigService* ssl_config_service, | 519 SSLConfigService* ssl_config_service, |
| 520 NetLog* net_log) | 520 NetLog* net_log) |
| 521 : transport_pool_(transport_pool), | 521 : transport_pool_(transport_pool), |
| 522 socks_pool_(socks_pool), | 522 socks_pool_(socks_pool), |
| 523 http_proxy_pool_(http_proxy_pool), | 523 http_proxy_pool_(http_proxy_pool), |
| 524 base_(this, | 524 base_(this, |
| 525 max_sockets, | 525 max_sockets, |
| 526 max_sockets_per_group, | 526 max_sockets_per_group, |
| 527 ClientSocketPool::unused_idle_socket_timeout(), | 527 ClientSocketPool::unused_idle_socket_timeout(), |
| 528 ClientSocketPool::used_idle_socket_timeout(), | 528 ClientSocketPool::used_idle_socket_timeout(), |
| 529 new SSLConnectJobFactory( | 529 new SSLConnectJobFactory( |
| 530 transport_pool, | 530 transport_pool, |
| 531 socks_pool, | 531 socks_pool, |
| 532 http_proxy_pool, | 532 http_proxy_pool, |
| 533 client_socket_factory, | 533 client_socket_factory, |
| 534 SSLClientSocketContext(cert_verifier, | 534 SSLClientSocketContext(cert_verifier, |
| 535 channel_id_service, | 535 channel_id_service, |
| 536 transport_security_state, | 536 transport_security_state, |
| 537 cert_transparency_verifier, | 537 cert_transparency_verifier, |
| 538 cert_policy_enforcer, | 538 ct_policy_enforcer, |
| 539 ssl_session_cache_shard), | 539 ssl_session_cache_shard), |
| 540 net_log)), | 540 net_log)), |
| 541 ssl_config_service_(ssl_config_service) { | 541 ssl_config_service_(ssl_config_service) { |
| 542 if (ssl_config_service_.get()) | 542 if (ssl_config_service_.get()) |
| 543 ssl_config_service_->AddObserver(this); | 543 ssl_config_service_->AddObserver(this); |
| 544 if (transport_pool_) | 544 if (transport_pool_) |
| 545 base_.AddLowerLayeredPool(transport_pool_); | 545 base_.AddLowerLayeredPool(transport_pool_); |
| 546 if (socks_pool_) | 546 if (socks_pool_) |
| 547 base_.AddLowerLayeredPool(socks_pool_); | 547 base_.AddLowerLayeredPool(socks_pool_); |
| 548 if (http_proxy_pool_) | 548 if (http_proxy_pool_) |
| (...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 681 if (base_.CloseOneIdleSocket()) | 681 if (base_.CloseOneIdleSocket()) |
| 682 return true; | 682 return true; |
| 683 return base_.CloseOneIdleConnectionInHigherLayeredPool(); | 683 return base_.CloseOneIdleConnectionInHigherLayeredPool(); |
| 684 } | 684 } |
| 685 | 685 |
| 686 void SSLClientSocketPool::OnSSLConfigChanged() { | 686 void SSLClientSocketPool::OnSSLConfigChanged() { |
| 687 FlushWithError(ERR_NETWORK_CHANGED); | 687 FlushWithError(ERR_NETWORK_CHANGED); |
| 688 } | 688 } |
| 689 | 689 |
| 690 } // namespace net | 690 } // namespace net |
| OLD | NEW |