From: Daniel Stenberg Date: Thu, 16 Feb 2023 22:52:22 +0000 (+0100) Subject: socks: allow using DoH to resolve host names X-Git-Tag: curl-7_88_1~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6d860f1758c9128e726a006d3aaea4d4c09bf77d;p=thirdparty%2Fcurl.git socks: allow using DoH to resolve host names For SOCKS modes where a local host resolve is done. It was previously disabled in 12d655d4561, but a few local tests seem to indicate that it works fine. Works now because of the SOCKS refactor of 4a4b63daaa01ef59 that made it non-blocking. Reported-by: roughtex on github Fixes #10537 Closes #10540 --- diff --git a/lib/socks.c b/lib/socks.c index d7d2b748a3..95c2b004c9 100644 --- a/lib/socks.c +++ b/lib/socks.c @@ -316,7 +316,7 @@ static CURLproxycode do_SOCKS4(struct Curl_cfilter *cf, /* DNS resolve only for SOCKS4, not SOCKS4a */ if(!protocol4a) { enum resolve_t rc = - Curl_resolv(data, sx->hostname, sx->remote_port, FALSE, &dns); + Curl_resolv(data, sx->hostname, sx->remote_port, TRUE, &dns); if(rc == CURLRESOLV_ERROR) return CURLPX_RESOLVE_HOST; @@ -783,7 +783,7 @@ static CURLproxycode do_SOCKS5(struct Curl_cfilter *cf, case CONNECT_REQ_INIT: if(socks5_resolve_local) { enum resolve_t rc = Curl_resolv(data, sx->hostname, sx->remote_port, - FALSE, &dns); + TRUE, &dns); if(rc == CURLRESOLV_ERROR) return CURLPX_RESOLVE_HOST;