summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/c-hyper.c6
-rw-r--r--lib/http_proxy.c3
-rw-r--r--tests/data/DISABLED1
3 files changed, 8 insertions, 2 deletions
diff --git a/lib/c-hyper.c b/lib/c-hyper.c
index 7ce958adb..38071e832 100644
--- a/lib/c-hyper.c
+++ b/lib/c-hyper.c
@@ -260,6 +260,12 @@ static CURLcode status_line(struct Curl_easy *data,
if(http_version == HYPER_HTTP_VERSION_1_0)
data->state.httpwant = CURL_HTTP_VERSION_1_0;
+ if(data->state.hconnect)
+ /* CONNECT */
+ data->info.httpproxycode = http_status;
+
+ /* We need to set 'httpcodeq' for functions that check the response code in
+ a single place. */
data->req.httpcode = http_status;
result = Curl_http_statusline(data, conn);
diff --git a/lib/http_proxy.c b/lib/http_proxy.c
index 8fc9c6222..2969c859d 100644
--- a/lib/http_proxy.c
+++ b/lib/http_proxy.c
@@ -210,6 +210,8 @@ static void connect_done(struct Curl_easy *data)
/* restore the protocol pointer */
data->req.p.http = s->prot_save;
s->prot_save = NULL;
+ data->info.httpcode = 0; /* clear it as it might've been used for the
+ proxy */
infof(data, "CONNECT phase completed!");
}
}
@@ -964,7 +966,6 @@ static CURLcode CONNECT(struct Curl_easy *data,
result = CURLE_OK;
if(s->tunnel_state == TUNNEL_COMPLETE) {
- data->info.httpproxycode = data->req.httpcode;
if(data->info.httpproxycode/100 != 2) {
if(conn->bits.close && data->req.newurl) {
conn->bits.proxy_connect_closed = TRUE;
diff --git a/tests/data/DISABLED b/tests/data/DISABLED
index 1f897e438..687857ad2 100644
--- a/tests/data/DISABLED
+++ b/tests/data/DISABLED
@@ -40,7 +40,6 @@
# hyper support remains EXPERIMENTAL as long as there's a test number
# listed below
%if hyper
-217
262
265
266