libfetch: fix parsing of proxy response to CONNECT requests

Instead of skipping just one line, properly parse the response headers.

[TT: reworded commit message]
cute-signatures
Conny Seifert 2021-01-18 15:01:05 +00:00 committed by Timo Teräs
parent 167fd86794
commit 4087ab92c4
1 changed files with 1 additions and 6 deletions

View File

@ -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) {