diff options
author | Werner Koch <[email protected]> | 2016-10-26 08:24:41 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2016-10-26 08:25:14 +0000 |
commit | d1ccab5176d7719328b287544b54b85e0277b146 (patch) | |
tree | 94b78410777f5ed26724c5fd2b6eb5978f19f768 /dirmngr/dirmngr.c | |
parent | agent: Avoid double error message. (diff) | |
download | gnupg-d1ccab5176d7719328b287544b54b85e0277b146.tar.gz gnupg-d1ccab5176d7719328b287544b54b85e0277b146.zip |
dirmngr: Fix hang due to deferred thread initialization.
* dirmngr/dirmngr.c (main): Call ldap_wrapper_launch_thread after
thread_init.
--
Fixes-commit: eda17649f8bd3b8ce7bfc00a3c11cbcae63c845d
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'dirmngr/dirmngr.c')
-rw-r--r-- | dirmngr/dirmngr.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c index 90eb6d43b..41e897b4f 100644 --- a/dirmngr/dirmngr.c +++ b/dirmngr/dirmngr.c @@ -983,13 +983,13 @@ main (int argc, char **argv) log_debug ("... okay\n"); } -#if USE_LDAP - ldap_wrapper_launch_thread (); -#endif /*USE_LDAP*/ thread_init (); cert_cache_init (); crl_cache_init (); +#if USE_LDAP + ldap_wrapper_launch_thread (); +#endif /*USE_LDAP*/ start_command_handler (ASSUAN_INVALID_FD); shutdown_reaper (); } @@ -1182,13 +1182,12 @@ main (int argc, char **argv) } #endif -#if USE_LDAP - ldap_wrapper_launch_thread (); -#endif /*USE_LDAP*/ - thread_init (); cert_cache_init (); crl_cache_init (); +#if USE_LDAP + ldap_wrapper_launch_thread (); +#endif /*USE_LDAP*/ handle_connections (fd); assuan_sock_close (fd); shutdown_reaper (); @@ -1211,12 +1210,12 @@ main (int argc, char **argv) memset (&ctrlbuf, 0, sizeof ctrlbuf); dirmngr_init_default_ctrl (&ctrlbuf); -#if USE_LDAP - ldap_wrapper_launch_thread (); -#endif /*USE_LDAP*/ thread_init (); cert_cache_init (); crl_cache_init (); +#if USE_LDAP + ldap_wrapper_launch_thread (); +#endif /*USE_LDAP*/ if (!argc) rc = crl_cache_load (&ctrlbuf, NULL); else @@ -1237,12 +1236,12 @@ main (int argc, char **argv) memset (&ctrlbuf, 0, sizeof ctrlbuf); dirmngr_init_default_ctrl (&ctrlbuf); -#if USE_LDAP - ldap_wrapper_launch_thread (); -#endif /*USE_LDAP*/ thread_init (); cert_cache_init (); crl_cache_init (); +#if USE_LDAP + ldap_wrapper_launch_thread (); +#endif /*USE_LDAP*/ rc = crl_fetch (&ctrlbuf, argv[0], &reader); if (rc) log_error (_("fetching CRL from '%s' failed: %s\n"), |