Index: net/socket/ssl_client_socket_pool.cc |
diff --git a/net/socket/ssl_client_socket_pool.cc b/net/socket/ssl_client_socket_pool.cc |
index 0f3da13071e00164b071102922575c34ab96bf37..82db97b1a18445e3478d4a2f27c7401cd8d67069 100644 |
--- a/net/socket/ssl_client_socket_pool.cc |
+++ b/net/socket/ssl_client_socket_pool.cc |
@@ -22,6 +22,78 @@ |
namespace net { |
+scoped_refptr<SSLSocketParams> SSLSocketParams::CreateForDirectConnection( |
+ const scoped_refptr<TransportSocketParams>& transport_params, |
+ const HostPortPair& host_and_port, |
+ const SSLConfig& ssl_config, |
+ int load_flags, |
+ bool force_spdy_over_ssl, |
+ bool want_spdy_over_npn) |
+{ |
+ return make_scoped_refptr(new SSLSocketParams( |
+ transport_params, |
+ NULL, |
+ NULL, |
+ ProxyServer::SCHEME_DIRECT, |
+ host_and_port, |
+ ssl_config, |
+ load_flags, |
+ force_spdy_over_ssl, |
+ want_spdy_over_npn, |
+ transport_params->ignore_limits() |
+ )); |
+} |
+ |
+scoped_refptr<SSLSocketParams> SSLSocketParams::CreateForHttpProxy( |
+ const scoped_refptr<HttpProxySocketParams>& http_proxy_params, |
+ ProxyServer::Scheme proxy, |
+ const HostPortPair& host_and_port, |
+ const SSLConfig& ssl_config, |
+ int load_flags, |
+ bool force_spdy_over_ssl, |
+ bool want_spdy_over_npn) { |
+ DCHECK(proxy == ProxyServer::SCHEME_HTTP || |
+ proxy == ProxyServer::SCHEME_HTTPS); |
+ |
+ return make_scoped_refptr(new SSLSocketParams( |
+ NULL, |
+ NULL, |
+ http_proxy_params, |
+ proxy, |
+ host_and_port, |
+ ssl_config, |
+ load_flags, |
+ force_spdy_over_ssl, |
+ want_spdy_over_npn, |
+ http_proxy_params->ignore_limits() |
+ )); |
+} |
+ |
+scoped_refptr<SSLSocketParams> SSLSocketParams::CreateForSocksProxy( |
+ const scoped_refptr<SOCKSSocketParams>& socks_params, |
+ ProxyServer::Scheme proxy, |
+ const HostPortPair& host_and_port, |
+ const SSLConfig& ssl_config, |
+ int load_flags, |
+ bool force_spdy_over_ssl, |
+ bool want_spdy_over_npn) { |
+ DCHECK(proxy == ProxyServer::SCHEME_SOCKS4 || |
+ proxy == ProxyServer::SCHEME_SOCKS5); |
+ |
+ return make_scoped_refptr(new SSLSocketParams( |
+ NULL, |
+ socks_params, |
+ NULL, |
+ proxy, |
+ host_and_port, |
+ ssl_config, |
+ load_flags, |
+ force_spdy_over_ssl, |
+ want_spdy_over_npn, |
+ socks_params->ignore_limits() |
+ )); |
+} |
+ |
SSLSocketParams::SSLSocketParams( |
const scoped_refptr<TransportSocketParams>& transport_params, |
const scoped_refptr<SOCKSSocketParams>& socks_params, |
@@ -31,7 +103,8 @@ SSLSocketParams::SSLSocketParams( |
const SSLConfig& ssl_config, |
int load_flags, |
bool force_spdy_over_ssl, |
- bool want_spdy_over_npn) |
+ bool want_spdy_over_npn, |
+ bool ignore_limits) |
: transport_params_(transport_params), |
http_proxy_params_(http_proxy_params), |
socks_params_(socks_params), |
@@ -41,27 +114,24 @@ SSLSocketParams::SSLSocketParams( |
load_flags_(load_flags), |
force_spdy_over_ssl_(force_spdy_over_ssl), |
want_spdy_over_npn_(want_spdy_over_npn), |
- ignore_limits_(false) { |
+ ignore_limits_(ignore_limits) { |
switch (proxy_) { |
case ProxyServer::SCHEME_DIRECT: |
DCHECK(transport_params_.get() != NULL); |
DCHECK(http_proxy_params_.get() == NULL); |
DCHECK(socks_params_.get() == NULL); |
- ignore_limits_ = transport_params_->ignore_limits(); |
break; |
case ProxyServer::SCHEME_HTTP: |
case ProxyServer::SCHEME_HTTPS: |
DCHECK(transport_params_.get() == NULL); |
DCHECK(http_proxy_params_.get() != NULL); |
DCHECK(socks_params_.get() == NULL); |
- ignore_limits_ = http_proxy_params_->ignore_limits(); |
break; |
case ProxyServer::SCHEME_SOCKS4: |
case ProxyServer::SCHEME_SOCKS5: |
DCHECK(transport_params_.get() == NULL); |
DCHECK(http_proxy_params_.get() == NULL); |
DCHECK(socks_params_.get() != NULL); |
- ignore_limits_ = socks_params_->ignore_limits(); |
break; |
default: |
LOG(DFATAL) << "unknown proxy type"; |