pinentry-curses can be forced to loop endlessly

NIIBE Yutaka gniibe at
Mon Jun 15 04:58:54 CEST 2015

On 06/13/2015 11:16 PM, Steffen Nurpmeso wrote:
>   $ echo bla|MAILRC=/tmp/.rc mailx -n -dvv -s sub du at auch
>   LOAD 80 bytes <set v15-compat smtp=nobody at localhost agent-shell-lookup='gpg -d /tmp/.pass.gpg'>
>   user = steffen, homedir = /home/steffen
>   gpg: encrypted with 4096-bit RSA key, ID A1862748, created 2014-07-08
>         "Steffen Nurpmeso <sdaoden at>"
>   gpg: public key decryption failed: Operation cancelled
>   gpg: decryption failed: No secret key
>   *agent-shell-lookup* execution failure (`gpg -d /tmp/.pass.gpg')
>   "/home/steffen/dead.letter" 1/4
>   ... message not sent.

OK.  It fails correctly when it tries to invoke pinentry-curses.  The
particular issue of endless pinentry was fixed.

> But note that screen handling is still completely messy from the
> pinentry side of the road, here just two snippets of what i see:

I understand your problem.  I think that this is another issue (than
endless pinentry).

I think that users would not like to use pinentry-curses in the
scenario you provided (from S-nail), because S-nail and
pinentry-curses interfere single terminal screen.

> Btw.: does pinentry-gtk2/-qt4/.. also stop working when not
> running on a terminal?

I believe those work well, as well as pinentry-tty.

I think that users would like to use pinentry-tty or
pinentry-gnome3/-qt4 when gpg is invoked from a program which uses

Please try pinentry-tty, it's there since pinentry 0.8.4.

More information about the Gnupg-devel mailing list