From 1aacd12471935a354cfd85ee1805edc7eb16e6c5 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Mon, 2 Jul 2018 10:37:49 +0900 Subject: [PATCH] libdns: For SOCKS connection, just fails. * dirmngr/dns.c (dns_res_exec): If it's DNS_SO_SOCKS_CONN, don't iterate to other server, but return the error immediately. -- In the function libdns_switch_port_p in dns-stuff.c, this patch allows to fallback using TOR_PORT2 correctly. Fixes-commit: bcdbf8b8ebe9d61160e0b007dabe1b6462ffbc93 Signed-off-by: NIIBE Yutaka --- dirmngr/dns.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dirmngr/dns.c b/dirmngr/dns.c index f82ed26cf..77f83f437 100644 --- a/dirmngr/dns.c +++ b/dirmngr/dns.c @@ -8846,7 +8846,7 @@ exec: dgoto(R->sp, DNS_R_FOREACH_A); error = dns_so_check(&R->so); - if (error == ECONNREFUSED) + if (R->so.state != DNS_SO_SOCKS_CONN && error == ECONNREFUSED) dgoto(R->sp, DNS_R_FOREACH_A); else if (error) goto error;