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 "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/metrics/field_trial.h" | 9 #include "base/metrics/field_trial.h" |
10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 static const int kSSLHandshakeTimeoutInSeconds = 30; | 170 static const int kSSLHandshakeTimeoutInSeconds = 30; |
171 | 171 |
172 SSLConnectJob::SSLConnectJob(const std::string& group_name, | 172 SSLConnectJob::SSLConnectJob(const std::string& group_name, |
173 RequestPriority priority, | 173 RequestPriority priority, |
174 const scoped_refptr<SSLSocketParams>& params, | 174 const scoped_refptr<SSLSocketParams>& params, |
175 const base::TimeDelta& timeout_duration, | 175 const base::TimeDelta& timeout_duration, |
176 TransportClientSocketPool* transport_pool, | 176 TransportClientSocketPool* transport_pool, |
177 SOCKSClientSocketPool* socks_pool, | 177 SOCKSClientSocketPool* socks_pool, |
178 HttpProxyClientSocketPool* http_proxy_pool, | 178 HttpProxyClientSocketPool* http_proxy_pool, |
179 ClientSocketFactory* client_socket_factory, | 179 ClientSocketFactory* client_socket_factory, |
180 HostResolver* host_resolver, | |
181 const SSLClientSocketContext& context, | 180 const SSLClientSocketContext& context, |
182 const GetMessengerCallback& get_messenger_callback, | 181 const GetMessengerCallback& get_messenger_callback, |
183 Delegate* delegate, | 182 Delegate* delegate, |
184 NetLog* net_log) | 183 NetLog* net_log) |
185 : ConnectJob(group_name, | 184 : ConnectJob(group_name, |
186 timeout_duration, | 185 timeout_duration, |
187 priority, | 186 priority, |
188 delegate, | 187 delegate, |
189 BoundNetLog::Make(net_log, NetLog::SOURCE_CONNECT_JOB)), | 188 BoundNetLog::Make(net_log, NetLog::SOURCE_CONNECT_JOB)), |
190 params_(params), | 189 params_(params), |
191 transport_pool_(transport_pool), | 190 transport_pool_(transport_pool), |
192 socks_pool_(socks_pool), | 191 socks_pool_(socks_pool), |
193 http_proxy_pool_(http_proxy_pool), | 192 http_proxy_pool_(http_proxy_pool), |
194 client_socket_factory_(client_socket_factory), | 193 client_socket_factory_(client_socket_factory), |
195 host_resolver_(host_resolver), | |
196 context_(context.cert_verifier, | 194 context_(context.cert_verifier, |
197 context.channel_id_service, | 195 context.channel_id_service, |
198 context.transport_security_state, | 196 context.transport_security_state, |
199 context.cert_transparency_verifier, | 197 context.cert_transparency_verifier, |
200 context.cert_policy_enforcer, | 198 context.cert_policy_enforcer, |
201 (params->privacy_mode() == PRIVACY_MODE_ENABLED | 199 (params->privacy_mode() == PRIVACY_MODE_ENABLED |
202 ? "pm/" + context.ssl_session_cache_shard | 200 ? "pm/" + context.ssl_session_cache_shard |
203 : context.ssl_session_cache_shard)), | 201 : context.ssl_session_cache_shard)), |
204 io_callback_( | 202 io_callback_( |
205 base::Bind(&SSLConnectJob::OnIOComplete, base::Unretained(this))), | 203 base::Bind(&SSLConnectJob::OnIOComplete, base::Unretained(this))), |
(...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
693 const PoolBase::Request& request, | 691 const PoolBase::Request& request, |
694 ConnectJob::Delegate* delegate) const { | 692 ConnectJob::Delegate* delegate) const { |
695 return scoped_ptr<ConnectJob>(new SSLConnectJob(group_name, | 693 return scoped_ptr<ConnectJob>(new SSLConnectJob(group_name, |
696 request.priority(), | 694 request.priority(), |
697 request.params(), | 695 request.params(), |
698 ConnectionTimeout(), | 696 ConnectionTimeout(), |
699 transport_pool_, | 697 transport_pool_, |
700 socks_pool_, | 698 socks_pool_, |
701 http_proxy_pool_, | 699 http_proxy_pool_, |
702 client_socket_factory_, | 700 client_socket_factory_, |
703 host_resolver_, | |
704 context_, | 701 context_, |
705 get_messenger_callback_, | 702 get_messenger_callback_, |
706 delegate, | 703 delegate, |
707 net_log_)); | 704 net_log_)); |
708 } | 705 } |
709 | 706 |
710 base::TimeDelta SSLClientSocketPool::SSLConnectJobFactory::ConnectionTimeout() | 707 base::TimeDelta SSLClientSocketPool::SSLConnectJobFactory::ConnectionTimeout() |
711 const { | 708 const { |
712 return timeout_; | 709 return timeout_; |
713 } | 710 } |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
847 CHECK(it != messenger_map_.end()); | 844 CHECK(it != messenger_map_.end()); |
848 delete it->second; | 845 delete it->second; |
849 messenger_map_.erase(it); | 846 messenger_map_.erase(it); |
850 } | 847 } |
851 | 848 |
852 void SSLClientSocketPool::OnSSLConfigChanged() { | 849 void SSLClientSocketPool::OnSSLConfigChanged() { |
853 FlushWithError(ERR_NETWORK_CHANGED); | 850 FlushWithError(ERR_NETWORK_CHANGED); |
854 } | 851 } |
855 | 852 |
856 } // namespace net | 853 } // namespace net |
OLD | NEW |