1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-02 22:46:30 +02:00

dirmngr: Make sure Tor mode is also set for DNS on SIGHUP.

* dirmngr/dns-stuff.c (enable_dns_tormode): Always succeed.
(reload_dns_stuff): Reset tor port.
* dirmngr/dirmngr.c (set_tor_mode): Also enable Tor mode for DNS.
(main): Remove warning that Tor mode may not fully work.
* dirmngr/server.c (cmd_dns_cert): Remove explicit Tor for DNS
initialization.
* dirmngr/t-dns-stuff.c (main): Remove option --new-circuit and error
checking for enable_dns_tormode.
--

This patch also resets the port on SIGHUP so that after starting Tor
SIGHUP is sufficient to use Tor.  Without the SIGHUP and when not
using the Tor browser Dirmngr would keep on trying the Tor browser
port.

Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
Werner Koch 2017-01-03 12:03:28 +01:00
parent 0004d52ba2
commit 9695124016
No known key found for this signature in database
GPG key ID: E3FDFF218E45B72B
5 changed files with 14 additions and 37 deletions

View file

@ -199,9 +199,9 @@ recursive_resolver_p (void)
}
/* Sets the module in Tor mode. Returns 0 is this is possible or an
error code. */
gpg_error_t
/* Puts this module eternally into Tor mode. When called agained with
* NEW_CIRCUIT request a new TOR circuit for the next DNS query. */
void
enable_dns_tormode (int new_circuit)
{
if (!*tor_socks_user || new_circuit)
@ -215,7 +215,6 @@ enable_dns_tormode (int new_circuit)
counter++;
}
tor_mode = 1;
return 0;
}
@ -548,7 +547,10 @@ reload_dns_stuff (int force)
libdns_reinit_pending = 0;
}
else
libdns_reinit_pending = 1;
{
libdns_reinit_pending = 1;
libdns_tor_port = 0; /* Start again with the default port. */
}
#else
(void)force;
#endif