diff options
author | yhirano@chromium.org <yhirano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-26 06:04:25 +0000 |
---|---|---|
committer | yhirano@chromium.org <yhirano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-26 06:04:25 +0000 |
commit | cb50a3d14483ff939b4aeaabbddb99ef6db12599 (patch) | |
tree | fa1ab99379cbb68a3d5f30cbd982bc5e9da95bbc /net/socket | |
parent | 6bfc220cd4df1577ebae83bf421134222d80b7bf (diff) | |
download | chromium_src-cb50a3d14483ff939b4aeaabbddb99ef6db12599.zip chromium_src-cb50a3d14483ff939b4aeaabbddb99ef6db12599.tar.gz chromium_src-cb50a3d14483ff939b4aeaabbddb99ef6db12599.tar.bz2 |
Use the appropriate socket pool on socket connection.
WebSocket connections should use WEBSOCKET_SOCKET_POOL socket pools.
InitSocketHandleForWebSocketRequest now uses WEBSOCKET_SOCKET_POOL socket pools.
Other InitSocketHandle* functions are unchanged.
BUG=118268
R=mmenke
TEST=net_unittests
Review URL: https://chromiumcodereview.appspot.com/17568008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208643 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket')
-rw-r--r-- | net/socket/client_socket_pool_manager.cc | 32 | ||||
-rw-r--r-- | net/socket/client_socket_pool_manager.h | 1 |
2 files changed, 16 insertions, 17 deletions
diff --git a/net/socket/client_socket_pool_manager.cc b/net/socket/client_socket_pool_manager.cc index c00b5ec..9282901 100644 --- a/net/socket/client_socket_pool_manager.cc +++ b/net/socket/client_socket_pool_manager.cc @@ -81,6 +81,7 @@ int InitSocketPoolHelper(const GURL& request_url, const BoundNetLog& net_log, int num_preconnect_streams, ClientSocketHandle* socket_handle, + HttpNetworkSession::SocketPoolType socket_pool_type, const OnHostResolutionCallback& resolution_callback, const CompletionCallback& callback) { scoped_refptr<TransportSocketParams> tcp_params; @@ -235,12 +236,10 @@ int InitSocketPoolHelper(const GURL& request_url, SSLClientSocketPool* ssl_pool = NULL; if (proxy_info.is_direct()) { - ssl_pool = session->GetSSLSocketPool( - HttpNetworkSession::NORMAL_SOCKET_POOL); + ssl_pool = session->GetSSLSocketPool(socket_pool_type); } else { - ssl_pool = session->GetSocketPoolForSSLWithProxy( - HttpNetworkSession::NORMAL_SOCKET_POOL, - *proxy_host_port); + ssl_pool = session->GetSocketPoolForSSLWithProxy(socket_pool_type, + *proxy_host_port); } if (num_preconnect_streams) { @@ -258,9 +257,7 @@ int InitSocketPoolHelper(const GURL& request_url, if (proxy_info.is_http() || proxy_info.is_https()) { HttpProxyClientSocketPool* pool = - session->GetSocketPoolForHTTPProxy( - HttpNetworkSession::NORMAL_SOCKET_POOL, - *proxy_host_port); + session->GetSocketPoolForHTTPProxy(socket_pool_type, *proxy_host_port); if (num_preconnect_streams) { RequestSocketsForPool(pool, connection_group, http_proxy_params, num_preconnect_streams, net_log); @@ -274,9 +271,7 @@ int InitSocketPoolHelper(const GURL& request_url, if (proxy_info.is_socks()) { SOCKSClientSocketPool* pool = - session->GetSocketPoolForSOCKSProxy( - HttpNetworkSession::NORMAL_SOCKET_POOL, - *proxy_host_port); + session->GetSocketPoolForSOCKSProxy(socket_pool_type, *proxy_host_port); if (num_preconnect_streams) { RequestSocketsForPool(pool, connection_group, socks_params, num_preconnect_streams, net_log); @@ -291,7 +286,7 @@ int InitSocketPoolHelper(const GURL& request_url, DCHECK(proxy_info.is_direct()); TransportClientSocketPool* pool = - session->GetTransportSocketPool(HttpNetworkSession::NORMAL_SOCKET_POOL); + session->GetTransportSocketPool(socket_pool_type); if (num_preconnect_streams) { RequestSocketsForPool(pool, connection_group, tcp_params, num_preconnect_streams, net_log); @@ -391,7 +386,8 @@ int InitSocketHandleForHttpRequest( request_url, request_extra_headers, request_load_flags, request_priority, session, proxy_info, force_spdy_over_ssl, want_spdy_over_npn, ssl_config_for_origin, ssl_config_for_proxy, false, privacy_mode, net_log, - 0, socket_handle, resolution_callback, callback); + 0, socket_handle, HttpNetworkSession::NORMAL_SOCKET_POOL, + resolution_callback, callback); } int InitSocketHandleForWebSocketRequest( @@ -415,7 +411,8 @@ int InitSocketHandleForWebSocketRequest( request_url, request_extra_headers, request_load_flags, request_priority, session, proxy_info, force_spdy_over_ssl, want_spdy_over_npn, ssl_config_for_origin, ssl_config_for_proxy, true, privacy_mode, net_log, - 0, socket_handle, resolution_callback, callback); + 0, socket_handle, HttpNetworkSession::WEBSOCKET_SOCKET_POOL, + resolution_callback, callback); } int InitSocketHandleForRawConnect( @@ -439,7 +436,8 @@ int InitSocketHandleForRawConnect( request_url, request_extra_headers, request_load_flags, request_priority, session, proxy_info, false, false, ssl_config_for_origin, ssl_config_for_proxy, true, privacy_mode, net_log, 0, socket_handle, - OnHostResolutionCallback(), callback); + HttpNetworkSession::NORMAL_SOCKET_POOL, OnHostResolutionCallback(), + callback); } int PreconnectSocketsForHttpRequest( @@ -460,8 +458,8 @@ int PreconnectSocketsForHttpRequest( request_url, request_extra_headers, request_load_flags, request_priority, session, proxy_info, force_spdy_over_ssl, want_spdy_over_npn, ssl_config_for_origin, ssl_config_for_proxy, false, privacy_mode, net_log, - num_preconnect_streams, NULL, OnHostResolutionCallback(), - CompletionCallback()); + num_preconnect_streams, NULL, HttpNetworkSession::NORMAL_SOCKET_POOL, + OnHostResolutionCallback(), CompletionCallback()); } } // namespace net diff --git a/net/socket/client_socket_pool_manager.h b/net/socket/client_socket_pool_manager.h index a514d25..1b78324 100644 --- a/net/socket/client_socket_pool_manager.h +++ b/net/socket/client_socket_pool_manager.h @@ -114,6 +114,7 @@ int InitSocketHandleForHttpRequest( // |resolution_callback| will be invoked after the the hostname is // resolved. If |resolution_callback| does not return OK, then the // connection will be aborted with that value. +// This function uses WEBSOCKET_SOCKET_POOL socket pools. int InitSocketHandleForWebSocketRequest( const GURL& request_url, const HttpRequestHeaders& request_extra_headers, |