[MacPorts] #50238: gpg2 can't connect to the agent specified in GPG_AGENT_INFO
MacPorts
noreply at macports.org
Tue Jan 5 16:39:36 PST 2016
#50238: gpg2 can't connect to the agent specified in GPG_AGENT_INFO
---------------------------+--------------------------------
Reporter: neil_mayhew@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.4
Keywords: gnupg2 | Port:
---------------------------+--------------------------------
I have a running `gpg-agent`:
{{{
$ ps x | grep gpg
44980 ?? Ss 0:00.09 gpg-agent --daemon --write-env-file
}}}
The environment is set correctly:
{{{
$ env | grep GPG
GPG_AGENT_INFO=/tmp/gpg-qIkaon/S.gpg-agent:44980:1
}}}
The socket exists:
{{{
$ ls -l ${GPG_AGENT_INFO%%:*}
srwxr-xr-x 1 mayhewn wheel 0 Jan 5 16:11 /tmp/gpg-qIkaon/S.gpg-agent
}}}
The environment file also exists:
{{{
$ cat ~/.gpg-agent-info
GPG_AGENT_INFO=/tmp/gpg-qIkaon/S.gpg-agent:44980:1
}}}
However, when I run `gpg2` it can't find the agent:
{{{
$ touch foo
$ gpg2 --sign foo
You need a passphrase to unlock the secret key for
user: "Neil Mayhew <...>"
1024-bit DSA key, ID XXXXXXXX, created 2005-11-21
gpg: can't connect to the agent - trying fall back
}}}
At this point, it manages to find the agent that was started by `launchd`,
and a pinentry dialog pops up on the screen. This is unfortunate, since
I'm using `ssh` and not sitting in front of the computer.
I've tried using `dtruss -f`, and as far as I can tell `gpg2` and its
children never stat or open the socket, and in fact never refer to it at
all. They do, however, try to stat `~/.gnupg/S.gpg-agent` which normally
doesn't exist, but even if I symlink the actual socket to this location,
`gpg2` still can't find the agent.
--
Ticket URL: <https://trac.macports.org/ticket/50238>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list