[pkg-gnupg-maint] Bug#993578: 90gpg-agent generator: `gpgconf --check-programs` can hang

Jonas Zeiger jonas.zeiger at talpidae.net
Mon Nov 29 17:57:14 GMT 2021


Hi,

I had this issue occur on several nodes running bullseye, where it severely affected operations (automated remote management).

The patch by Raphaël Hertzog looks great. Reviewed the patch and gpgconf source:
  - it should lead to gpgconf calling gc_component_check_options()
  - same as if using "gpgconf --check-programs", but for the "gpg-agent" backend only

I thought the bug could also be filed for/fixed in dirmgr:
 -> various login events
  -> systemd-environment-generator/90gpg-agent 
   -> gpgconf --check-programs
    -> ...gc_component_check_options()
     -> dirmngr --gpgconf-test  // IMHO shouldn't perform blocking network IO, but does
      -> hang on TCP connect localhost:9050

Thus I checked the dirmngr source code and found this:

>  /* Note that we do not run set_tor_mode in --gpgconf-list mode
>   * because it will attempt to connect to the tor client and that can
>   * be time consuming.  */
>  post_option_parsing ();
>  if (cmd != aGPGConfTest && cmd != aGPGConfList && cmd != aGPGConfVersions)
>    set_tor_mode (); 

This seems to be to be intended behavior for dirmngr and could be considered a feature.

I think many people are waiting for the updated "gpg-agent" package to arrive for stable (bullseye).

Kind regards,
Jonas



More information about the pkg-gnupg-maint mailing list