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

Description

gpg-agent(1) says:

SIGTERM
       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.

Details

Version
2.2.15
dkg created this task.May 19 2019, 9:17 PM
werner triaged this task as Normal priority.Mon, May 20, 9:30 AM