From 4087ab92c4faf21e62e85685e5960106d898386a Mon Sep 17 00:00:00 2001 From: Conny Seifert Date: Mon, 18 Jan 2021 15:01:05 +0000 Subject: [PATCH] libfetch: fix parsing of proxy response to CONNECT requests Instead of skipping just one line, properly parse the response headers. [TT: reworded commit message] --- libfetch/http.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/libfetch/http.c b/libfetch/http.c index 7141b98..95c57f6 100644 --- a/libfetch/http.c +++ b/libfetch/http.c @@ -725,11 +725,6 @@ http_connect(struct url *URL, struct url *purl, const char *flags, int *cached) http_seterr(conn->err); goto ouch; } - /* Read and discard the rest of the proxy response */ - if (fetch_getln(conn) < 0) { - fetch_syserr(); - goto ouch; - } do { switch ((h = http_next_header(conn, &p))) { case hdr_syserror: @@ -741,7 +736,7 @@ http_connect(struct url *URL, struct url *purl, const char *flags, int *cached) default: /* ignore */ ; } - } while (h < hdr_end); + } while (h > hdr_end); } if (strcasecmp(URL->scheme, SCHEME_HTTPS) == 0 && fetch_ssl(conn, URL, verbose) == -1) {