Hi,
since a while (months) I can't use operations anymore, which use the pinentry program. I debugged this now a bit:
The debug-pinentry line with the error is:
error calling pinentry: No such file or directory <Pinentry>
System: FreeBSD 14
I have those pinentry programs:
(249) netchild@ttypts/1 % ll /usr/local/bin/*entry*
lrwxr-xr-x 1 root wheel 12B 9 Feb. 2021 /usr/local/bin/pinentry@ -> pinentry-tty
-r-xr-xr-x 1 root wheel 66K 10 Feb. 2021 /usr/local/bin/pinentry-curses*
-r-xr-xr-x 1 root wheel 58K 9 Feb. 2021 /usr/local/bin/pinentry-tty*
I have this gpg-agent.conf:
% cat .gnupg/gpg-agent.conf
pinentry-program /usr/local/bin/pinentry-curses
debug-pinentry
log-file /tmp/gpgagent.log
debug 1024
If I do not have the pinentry-program line, the behavior is the same.
Here a little bit more of the logfile:
2022-02-02 11:55:39 gpg-agent[53190] Es wird auf Socket `/home/netchild/.gnupg/S.gpg-agent' gehört
2022-02-02 11:55:39 gpg-agent[53190] Es wird auf Socket `/home/netchild/.gnupg/S.gpg-agent.extra' gehört
2022-02-02 11:55:39 gpg-agent[53190] Es wird auf Socket `/home/netchild/.gnupg/S.gpg-agent.browser' gehört
2022-02-02 11:55:39 gpg-agent[53190] Es wird auf Socket `/home/netchild/.gnupg/S.gpg-agent.ssh' gehört
2022-02-02 11:55:39 gpg-agent[53192] gpg-agent (GnuPG) 2.3.3 started
2022-02-02 11:55:39 gpg-agent[53192] accept failed for extra: Socket operation on non-socket
2022-02-02 11:55:39 gpg-agent[53192] accept failed for extra: Socket operation on non-socket
2022-02-02 11:55:39 gpg-agent[53192] accept failed for extra: Socket operation on non-socket
2022-02-02 11:55:39 gpg-agent[53192] accept failed for extra: Socket operation on non-socket
The above "accept failed" lines show up a lot... filtering them out reduces the logsize from 370MB to a few KB. The extra-socket is in the same directory / FS as the other ones, but the one for the extra socket the failure lines show up.
...
2022-02-02 11:55:39 gpg-agent[53192] no running /usr/local/libexec/scdaemon daemon - starting it
2022-02-02 11:55:44 gpg-agent[53192] DBG: chan_7 <- ERR 67109133 can't exec `/usr/local/libexec/s
cdaemon': No such file or directory
2022-02-02 11:55:44 gpg-agent[53192] DBG: chan_7 -> BYE
2022-02-02 11:55:44 gpg-agent[53192] can't connect to the daemon /usr/local/libexec/scdaemon: IPC
"connect" Aufruf fehlgeschlagen
This comes several times and is expected, as I don't have scdaemon installed. This corresponds with a slow display of the subkeys. I'm not sure if the above accept errors make it slow, or the missing scdaemon. I don't think this is the cause of the problem with the uppercase-P in the Pinentry-error, but maybe worth mentioning.
When setting a new expiry date for my secret key (it is expired and I want to extend it):
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 <- OK
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 -> SETPROMPT Passwort:
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 <- OK
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 -> Confidential data not shown
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 <- Confidential data not shown
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 <- Confidential data not shown
2022-02-02 11:57:15 gpg-agent[53192] DBG: error calling pinentry: No such file or directory <Pinentry>
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_6 -> BYE
2022-02-02 11:57:15 gpg-agent[53192] failed to unprotect the secret key: No such file or directory
2022-02-02 11:57:15 gpg-agent[53192] failed to read the secret key
2022-02-02 11:57:15 gpg-agent[53192] command 'PKSIGN' failed: No such file or directory <Pinentry>
2022-02-02 11:57:15 gpg-agent[53192] DBG: chan_5 -> ERR 83918929 No such file or directory <Pinentry>
I grepped through the entire .gnupg directory, and can't find Pinentry with an uppercase P. I grepped through the source of gnupg 2.3.3, there are several cases of Pinentry with an uppercase-P, but none of them seem to be a string for the program which shall be called...
What am I overlooking, what shall I try to find the root-cause of this?
Bye,
Alexander.