| Index: jingle/glue/proxy_resolving_client_socket.cc
|
| diff --git a/jingle/glue/proxy_resolving_client_socket.cc b/jingle/glue/proxy_resolving_client_socket.cc
|
| index 545a9882549c30f34d2f5df5646e7194386be462..91eb5ae7d98927ee7e2b41a1dd1d2ea631af263d 100644
|
| --- a/jingle/glue/proxy_resolving_client_socket.cc
|
| +++ b/jingle/glue/proxy_resolving_client_socket.cc
|
| @@ -12,7 +12,9 @@
|
| #include "net/base/io_buffer.h"
|
| #include "net/base/load_flags.h"
|
| #include "net/base/net_errors.h"
|
| +#include "net/http/http_auth_controller.h"
|
| #include "net/http/http_network_session.h"
|
| +#include "net/http/proxy_client_socket.h"
|
| #include "net/socket/client_socket_handle.h"
|
| #include "net/socket/client_socket_pool_manager.h"
|
| #include "net/url_request/url_request_context.h"
|
| @@ -270,6 +272,15 @@ int ProxyResolvingClientSocket::ReconsiderProxyAfterError(int error) {
|
| // "address unreachable" error, and will report both of these failures as
|
| // ERR_ADDRESS_UNREACHABLE.
|
| return net::ERR_ADDRESS_UNREACHABLE;
|
| + case net::ERR_PROXY_AUTH_REQUESTED: {
|
| + net::ProxyClientSocket* proxy_socket =
|
| + static_cast<net::ProxyClientSocket*>(transport_->socket());
|
| +
|
| + if (proxy_socket->GetAuthController()->HaveAuth())
|
| + return proxy_socket->RestartWithAuth(connect_callback_);
|
| +
|
| + return error;
|
| + }
|
| default:
|
| return error;
|
| }
|
|
|