aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/http.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/http.c b/lib/http.c
index 9c9d6d533..14f45881d 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -1076,7 +1076,7 @@ CURLcode Curl_ConnectHTTPProxyTunnel(struct connectdata *conn,
else if(2 == sscanf(line_start, "HTTP/1.%d %d",
&subversion,
&k->httpcode)) {
- /* store the HTTP code */
+ /* store the HTTP code from the proxy */
data->info.httpproxycode = k->httpcode;
}
/* put back the letter we blanked out before */
@@ -1094,9 +1094,10 @@ CURLcode Curl_ConnectHTTPProxyTunnel(struct connectdata *conn,
if(error)
return CURLE_RECV_ERROR;
- /* Deal with the possibly already received authenticate headers. 'newurl'
- is set to a new URL if we must loop. */
- Curl_http_auth_act(conn);
+ if(data->info.httpproxycode != 200)
+ /* Deal with the possibly already received authenticate
+ headers. 'newurl' is set to a new URL if we must loop. */
+ Curl_http_auth_act(conn);
} while(conn->newurl);