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 #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 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 | 65 |
66 // Must be called only when GetConnectionType() returns HTTP_PROXY. | 66 // Must be called only when GetConnectionType() returns HTTP_PROXY. |
67 const scoped_refptr<HttpProxySocketParams>& | 67 const scoped_refptr<HttpProxySocketParams>& |
68 GetHttpProxyConnectionParams() const; | 68 GetHttpProxyConnectionParams() const; |
69 | 69 |
70 const HostPortPair& host_and_port() const { return host_and_port_; } | 70 const HostPortPair& host_and_port() const { return host_and_port_; } |
71 const SSLConfig& ssl_config() const { return ssl_config_; } | 71 const SSLConfig& ssl_config() const { return ssl_config_; } |
72 PrivacyMode privacy_mode() const { return privacy_mode_; } | 72 PrivacyMode privacy_mode() const { return privacy_mode_; } |
73 int load_flags() const { return load_flags_; } | 73 int load_flags() const { return load_flags_; } |
74 bool expect_spdy() const { return expect_spdy_; } | 74 bool expect_spdy() const { return expect_spdy_; } |
75 bool ignore_limits() const { return ignore_limits_; } | |
76 | 75 |
77 private: | 76 private: |
78 friend class base::RefCounted<SSLSocketParams>; | 77 friend class base::RefCounted<SSLSocketParams>; |
79 ~SSLSocketParams(); | 78 ~SSLSocketParams(); |
80 | 79 |
81 const scoped_refptr<TransportSocketParams> direct_params_; | 80 const scoped_refptr<TransportSocketParams> direct_params_; |
82 const scoped_refptr<SOCKSSocketParams> socks_proxy_params_; | 81 const scoped_refptr<SOCKSSocketParams> socks_proxy_params_; |
83 const scoped_refptr<HttpProxySocketParams> http_proxy_params_; | 82 const scoped_refptr<HttpProxySocketParams> http_proxy_params_; |
84 const HostPortPair host_and_port_; | 83 const HostPortPair host_and_port_; |
85 const SSLConfig ssl_config_; | 84 const SSLConfig ssl_config_; |
86 const PrivacyMode privacy_mode_; | 85 const PrivacyMode privacy_mode_; |
87 const int load_flags_; | 86 const int load_flags_; |
88 const bool expect_spdy_; | 87 const bool expect_spdy_; |
89 bool ignore_limits_; | |
90 | 88 |
91 DISALLOW_COPY_AND_ASSIGN(SSLSocketParams); | 89 DISALLOW_COPY_AND_ASSIGN(SSLSocketParams); |
92 }; | 90 }; |
93 | 91 |
94 // SSLConnectJob handles the SSL handshake after setting up the underlying | 92 // SSLConnectJob handles the SSL handshake after setting up the underlying |
95 // connection as specified in the params. | 93 // connection as specified in the params. |
96 class SSLConnectJob : public ConnectJob { | 94 class SSLConnectJob : public ConnectJob { |
97 public: | 95 public: |
98 // Note: the SSLConnectJob does not own |messenger| so it must outlive the | 96 // Note: the SSLConnectJob does not own |messenger| so it must outlive the |
99 // job. | 97 // job. |
100 SSLConnectJob(const std::string& group_name, | 98 SSLConnectJob(const std::string& group_name, |
101 RequestPriority priority, | 99 RequestPriority priority, |
| 100 ClientSocketPool::RespectLimits respect_limits, |
102 const scoped_refptr<SSLSocketParams>& params, | 101 const scoped_refptr<SSLSocketParams>& params, |
103 const base::TimeDelta& timeout_duration, | 102 const base::TimeDelta& timeout_duration, |
104 TransportClientSocketPool* transport_pool, | 103 TransportClientSocketPool* transport_pool, |
105 SOCKSClientSocketPool* socks_pool, | 104 SOCKSClientSocketPool* socks_pool, |
106 HttpProxyClientSocketPool* http_proxy_pool, | 105 HttpProxyClientSocketPool* http_proxy_pool, |
107 ClientSocketFactory* client_socket_factory, | 106 ClientSocketFactory* client_socket_factory, |
108 const SSLClientSocketContext& context, | 107 const SSLClientSocketContext& context, |
109 Delegate* delegate, | 108 Delegate* delegate, |
110 NetLog* net_log); | 109 NetLog* net_log); |
111 ~SSLConnectJob() override; | 110 ~SSLConnectJob() override; |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
198 HttpProxyClientSocketPool* http_proxy_pool, | 197 HttpProxyClientSocketPool* http_proxy_pool, |
199 SSLConfigService* ssl_config_service, | 198 SSLConfigService* ssl_config_service, |
200 NetLog* net_log); | 199 NetLog* net_log); |
201 | 200 |
202 ~SSLClientSocketPool() override; | 201 ~SSLClientSocketPool() override; |
203 | 202 |
204 // ClientSocketPool implementation. | 203 // ClientSocketPool implementation. |
205 int RequestSocket(const std::string& group_name, | 204 int RequestSocket(const std::string& group_name, |
206 const void* connect_params, | 205 const void* connect_params, |
207 RequestPriority priority, | 206 RequestPriority priority, |
| 207 RespectLimits respect_limits, |
208 ClientSocketHandle* handle, | 208 ClientSocketHandle* handle, |
209 const CompletionCallback& callback, | 209 const CompletionCallback& callback, |
210 const BoundNetLog& net_log) override; | 210 const BoundNetLog& net_log) override; |
211 | 211 |
212 void RequestSockets(const std::string& group_name, | 212 void RequestSockets(const std::string& group_name, |
213 const void* params, | 213 const void* params, |
214 int num_sockets, | 214 int num_sockets, |
215 const BoundNetLog& net_log) override; | 215 const BoundNetLog& net_log) override; |
216 | 216 |
217 void CancelRequest(const std::string& group_name, | 217 void CancelRequest(const std::string& group_name, |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
295 HttpProxyClientSocketPool* const http_proxy_pool_; | 295 HttpProxyClientSocketPool* const http_proxy_pool_; |
296 PoolBase base_; | 296 PoolBase base_; |
297 const scoped_refptr<SSLConfigService> ssl_config_service_; | 297 const scoped_refptr<SSLConfigService> ssl_config_service_; |
298 | 298 |
299 DISALLOW_COPY_AND_ASSIGN(SSLClientSocketPool); | 299 DISALLOW_COPY_AND_ASSIGN(SSLClientSocketPool); |
300 }; | 300 }; |
301 | 301 |
302 } // namespace net | 302 } // namespace net |
303 | 303 |
304 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ | 304 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_POOL_H_ |
OLD | NEW |