socks: allow using DoH to resolve host names
For SOCKS modes where a local host resolve is done. It was previously disabled in12d655d456, but a few local tests seem to indicate that it works fine. Works now because of the SOCKS refactor of4a4b63daaathat made it non-blocking. Reported-by: roughtex on github Fixes #10537 Closes #10540
This commit is contained in:
parent
4437e3e344
commit
6d860f1758
@ -316,7 +316,7 @@ static CURLproxycode do_SOCKS4(struct Curl_cfilter *cf,
|
|||||||
/* DNS resolve only for SOCKS4, not SOCKS4a */
|
/* DNS resolve only for SOCKS4, not SOCKS4a */
|
||||||
if(!protocol4a) {
|
if(!protocol4a) {
|
||||||
enum resolve_t rc =
|
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)
|
if(rc == CURLRESOLV_ERROR)
|
||||||
return CURLPX_RESOLVE_HOST;
|
return CURLPX_RESOLVE_HOST;
|
||||||
@ -783,7 +783,7 @@ static CURLproxycode do_SOCKS5(struct Curl_cfilter *cf,
|
|||||||
case CONNECT_REQ_INIT:
|
case CONNECT_REQ_INIT:
|
||||||
if(socks5_resolve_local) {
|
if(socks5_resolve_local) {
|
||||||
enum resolve_t rc = Curl_resolv(data, sx->hostname, sx->remote_port,
|
enum resolve_t rc = Curl_resolv(data, sx->hostname, sx->remote_port,
|
||||||
FALSE, &dns);
|
TRUE, &dns);
|
||||||
|
|
||||||
if(rc == CURLRESOLV_ERROR)
|
if(rc == CURLRESOLV_ERROR)
|
||||||
return CURLPX_RESOLVE_HOST;
|
return CURLPX_RESOLVE_HOST;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user