diff options
author | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-25 16:00:05 +0000 |
---|---|---|
committer | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-25 16:00:05 +0000 |
commit | 8dbf33e8cf8658a02aebdde2202cd882c488211d (patch) | |
tree | 61090c9ba6eecee4b05a60568950d37f4ea4ffed /net/http/http_network_session.cc | |
parent | 381ea555123f1cdb465ea8d542fa2145121ac3e1 (diff) | |
download | chromium_src-8dbf33e8cf8658a02aebdde2202cd882c488211d.zip chromium_src-8dbf33e8cf8658a02aebdde2202cd882c488211d.tar.gz chromium_src-8dbf33e8cf8658a02aebdde2202cd882c488211d.tar.bz2 |
Add support for speaking SSL to an HTTP Proxy, to
HttpProxyClientSocketPool (and friends)
More information about an HTTPS Proxy can be found here:
http://dev.chromium.org/spdy/spdy-proxy
This implementation supports both http:// and https:// requests,
as well as support for both Proxy and Server auth.
BUG=29625
TEST=none
Review URL: http://codereview.chromium.org/3110006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57333 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_network_session.cc')
-rw-r--r-- | net/http/http_network_session.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc index d85a4ef..93340ef 100644 --- a/net/http/http_network_session.cc +++ b/net/http/http_network_session.cc @@ -46,6 +46,10 @@ HttpNetworkSession::HttpNetworkSession( tcp_for_http_proxy_pool_histograms_( new ClientSocketPoolHistograms("TCPforHTTPProxy")), http_proxy_pool_histograms_(new ClientSocketPoolHistograms("HTTPProxy")), + tcp_for_https_proxy_pool_histograms_( + new ClientSocketPoolHistograms("TCPforHTTPSProxy")), + ssl_for_https_proxy_pool_histograms_( + new ClientSocketPoolHistograms("SSLforHTTPSProxy")), tcp_for_socks_pool_histograms_( new ClientSocketPoolHistograms("TCPforSOCKS")), socks_pool_histograms_(new ClientSocketPoolHistograms("SOCK")), @@ -91,6 +95,16 @@ HttpNetworkSession::GetSocketPoolForHTTPProxy(const HostPortPair& http_proxy) { g_max_sockets_per_proxy_server, g_max_sockets_per_group, tcp_for_http_proxy_pool_histograms_, host_resolver_, socket_factory_, net_log_), + new SSLClientSocketPool( + g_max_sockets_per_proxy_server, g_max_sockets_per_group, + ssl_for_https_proxy_pool_histograms_, host_resolver_, + socket_factory_, + new TCPClientSocketPool( + g_max_sockets_per_proxy_server, + g_max_sockets_per_group, + tcp_for_https_proxy_pool_histograms_, host_resolver_, + socket_factory_, net_log_), + NULL, NULL, net_log_), net_log_))); return ret.first->second; |