diff options
author | Werner Koch <[email protected]> | 2016-12-16 20:00:14 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2016-12-16 20:00:14 +0000 |
commit | c4e8a3194d6b92f596a6483e486c645de7d2ddd1 (patch) | |
tree | 5d6eb7751981880a111f32ab9e3ac29110894346 /dirmngr/dirmngr.c | |
parent | dirmngr: Pass Tor credentials to libdns. (diff) | |
download | gnupg-c4e8a3194d6b92f596a6483e486c645de7d2ddd1.tar.gz gnupg-c4e8a3194d6b92f596a6483e486c645de7d2ddd1.zip |
dirmngr: Use one context for all libdns queries.
* dirmngr/dns-stuff.c (libdns_reinit_pending): New var.
(enable_recursive_resolver): Set var.
(set_dns_nameserver): Ditto.
(libdns_init): Avoid double initialization.
(libdns_deinit): New.
(reload_dns_stuff): New.
(libdns_res_open): Act upon LIBDNS_REINIT_PENDING.
* dirmngr/t-dns-stuff.c (main): Call reload_dns_stuff to release
memory.
* dirmngr/dirmngr.c (cleanup): Ditto.
(dirmngr_sighup_action): Call reload_dns_stuff to set
LIBDNS_REINIT_PENDING.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'dirmngr/dirmngr.c')
-rw-r--r-- | dirmngr/dirmngr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c index a11832746..ef30d2c3c 100644 --- a/dirmngr/dirmngr.c +++ b/dirmngr/dirmngr.c @@ -1383,6 +1383,7 @@ cleanup (void) { crl_cache_deinit (); cert_cache_deinit (1); + reload_dns_stuff (1); #if USE_LDAP ldapserver_list_free (opt.ldapservers); @@ -1689,6 +1690,7 @@ dirmngr_sighup_action (void) crl_cache_deinit (); cert_cache_init (); crl_cache_init (); + reload_dns_stuff (0); } |