Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(227)

Side by Side Diff: net/http/http_proxy_client_socket_pool.cc

Issue 4935001: Allow a non-200 (or non-407) response for a CONNECT request from an HTTPS pro... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Pass a ClientSocketHandle up out of the HttpProxyClientSocketPool Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/http/http_proxy_client_socket_pool.h" 5 #include "net/http/http_proxy_client_socket_pool.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/time.h" 9 #include "base/time.h"
10 #include "base/values.h" 10 #include "base/values.h"
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 // Add a HttpProxy connection on top of the tcp socket. 311 // Add a HttpProxy connection on top of the tcp socket.
312 transport_socket_.reset( 312 transport_socket_.reset(
313 new HttpProxyClientSocket(transport_socket_handle_.release(), 313 new HttpProxyClientSocket(transport_socket_handle_.release(),
314 params_->request_url(), 314 params_->request_url(),
315 params_->user_agent(), 315 params_->user_agent(),
316 params_->endpoint(), 316 params_->endpoint(),
317 proxy_server, 317 proxy_server,
318 params_->http_auth_cache(), 318 params_->http_auth_cache(),
319 params_->http_auth_handler_factory(), 319 params_->http_auth_handler_factory(),
320 params_->tunnel(), 320 params_->tunnel(),
321 using_spdy_)); 321 using_spdy_,
322 params_->ssl_params() != NULL));
322 return transport_socket_->Connect(&callback_); 323 return transport_socket_->Connect(&callback_);
323 } 324 }
324 325
325 int HttpProxyConnectJob::DoHttpProxyConnectComplete(int result) { 326 int HttpProxyConnectJob::DoHttpProxyConnectComplete(int result) {
326 if (result == OK || result == ERR_PROXY_AUTH_REQUESTED) 327 if (result == OK || result == ERR_PROXY_AUTH_REQUESTED ||
328 result == ERR_HTTPS_PROXY_TUNNEL_RESPONSE) {
vandebo (ex-Chrome) 2010/12/16 02:24:31 nit: can you update the comment in client_socket_p
Ryan Hamilton 2010/12/16 05:23:50 Done.
327 set_socket(transport_socket_.release()); 329 set_socket(transport_socket_.release());
330 }
328 331
329 return result; 332 return result;
330 } 333 }
331 334
332 HttpProxyClientSocketPool:: 335 HttpProxyClientSocketPool::
333 HttpProxyConnectJobFactory::HttpProxyConnectJobFactory( 336 HttpProxyConnectJobFactory::HttpProxyConnectJobFactory(
334 TCPClientSocketPool* tcp_pool, 337 TCPClientSocketPool* tcp_pool,
335 SSLClientSocketPool* ssl_pool, 338 SSLClientSocketPool* ssl_pool,
336 HostResolver* host_resolver, 339 HostResolver* host_resolver,
337 NetLog* net_log) 340 NetLog* net_log)
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 list->Append(ssl_pool_->GetInfoAsValue("ssl_socket_pool", 451 list->Append(ssl_pool_->GetInfoAsValue("ssl_socket_pool",
449 "ssl_socket_pool", 452 "ssl_socket_pool",
450 true)); 453 true));
451 } 454 }
452 dict->Set("nested_pools", list); 455 dict->Set("nested_pools", list);
453 } 456 }
454 return dict; 457 return dict;
455 } 458 }
456 459
457 } // namespace net 460 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698