I have been digging in the code. I found it very difficult to get any useful debug logging out. Some patches to maybe help with that will follow, but I am still stumped as to get debugging output from gpg-agent. I tried making a stunt shell script to pass --debug-all --no-detach and redirect stderr somewhere, but it is ineffective for some reason.
Nevertheless, I have discovered a possible explanation for the bug. The variable `active_connectionis' in gpg-agent.c seems to be updated by multiple threads without any locking. If it were to get corrupted, I think gpg-agent might get stuck trying to exit, with clients which had successfully connected at the syscall level. Ian. -- Ian Jackson <ijack...@chiark.greenend.org.uk> These opinions are my own. If I emailed you from an address @fyvzl.net or @evade.org.uk, that is a private address which bypasses my fierce spamfilter.