Index: net/http/http_stream_request.cc |
=================================================================== |
--- net/http/http_stream_request.cc (revision 68026) |
+++ net/http/http_stream_request.cc (working copy) |
@@ -193,6 +193,12 @@ |
delegate_->OnNeedsClientAuth(cert_info); |
} |
+void HttpStreamRequest::OnHttpsProxyTunnelConnectionResponseCallback( |
+ const HttpResponseInfo& response_info, |
+ HttpStream* stream) { |
+ delegate_->OnHttpsProxyTunnelConnectionResponse(response_info, stream); |
+} |
+ |
void HttpStreamRequest::OnPreconnectsComplete(int result) { |
preconnect_delegate_->OnPreconnectsComplete(this, result); |
} |
@@ -240,7 +246,7 @@ |
HttpProxyClientSocket* http_proxy_socket = |
static_cast<HttpProxyClientSocket*>(connection_->socket()); |
const HttpResponseInfo* tunnel_auth_response = |
- http_proxy_socket->GetResponseInfo(); |
+ http_proxy_socket->GetConnectResponseInfo(); |
next_state_ = STATE_WAITING_USER_ACTION; |
MessageLoop::current()->PostTask( |
@@ -260,6 +266,15 @@ |
connection_->ssl_error_response_info().cert_request_info)); |
return ERR_IO_PENDING; |
+ case ERR_HTTPS_PROXY_TUNNEL_CONNECTION_RESPONSE: |
+ MessageLoop::current()->PostTask( |
+ FROM_HERE, |
+ method_factory_.NewRunnableMethod( |
+ &HttpStreamRequest::OnHttpsProxyTunnelConnectionResponseCallback, |
+ connection_->ssl_error_response_info(), |
+ connection_->release_pending_https_proxy_response_stream())); |
+ return ERR_IO_PENDING; |
+ |
case OK: |
next_state_ = STATE_DONE; |
MessageLoop::current()->PostTask( |