summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2021-10-22 10:57:54 +0200
committerDaniel Stenberg <daniel@haxx.se>2021-10-22 10:57:54 +0200
commitb360df36c56bbdd0da7ecdacdf8dc2a9c98cd053 (patch)
treee844b70f904d2efa36dcafe93b040beb7976dc5d
parentb998b3f9f62d20fa657975c01ae9afe8d837b54c (diff)
downloadcurl-b360df36c56bbdd0da7ecdacdf8dc2a9c98cd053.tar.gz
c-hyper: don't abort CONNECT responses early when auth-in-progressbagder/hyper-tests
... and make sure to stop ignoring the body once the CONNECT is done. This should make test 206 work proper again and not be flaky.
-rw-r--r--lib/c-hyper.c3
-rw-r--r--lib/http_proxy.c1
2 files changed, 3 insertions, 1 deletions
diff --git a/lib/c-hyper.c b/lib/c-hyper.c
index 38071e832..c691544b7 100644
--- a/lib/c-hyper.c
+++ b/lib/c-hyper.c
@@ -205,7 +205,8 @@ static int hyper_body_chunk(void *userdata, const hyper_buf *chunk)
k->exp100 = EXP100_FAILED;
}
}
- if(data->state.hconnect && (data->req.httpcode/100 != 2)) {
+ if(data->state.hconnect && (data->req.httpcode/100 != 2) &&
+ data->state.authproxy.done) {
done = TRUE;
result = CURLE_OK;
}
diff --git a/lib/http_proxy.c b/lib/http_proxy.c
index 2969c859d..5244a25bb 100644
--- a/lib/http_proxy.c
+++ b/lib/http_proxy.c
@@ -212,6 +212,7 @@ static void connect_done(struct Curl_easy *data)
s->prot_save = NULL;
data->info.httpcode = 0; /* clear it as it might've been used for the
proxy */
+ data->req.ignorebody = FALSE;
infof(data, "CONNECT phase completed!");
}
}