gpg-agent behavior on SIGTERM differs from KILLAGENT handling
Open, NormalPublic


gpg-agent(1) says:

       Shuts  down the process but waits until all current requests are
       fulfilled.  If the process has received 3 of these  signals  and
       requests are still pending, a shutdown is forced.

But even if there is no outstanding request, (e.g. just an open gpg-connect-agent client that is not making any requests), the agent doesn't shut down.

Contrast this with the behavior of gpg-agent when it is handling the KILLAGENT assuan command: in that case, it terminates cleanly even when there is a hanging gpg-connect-agent client.

I think the response to a SIGTERM should be the same behavior as responding to a KILLAGENT command, or at least we need a much clearer explanation of why someone might want one or the other.