pinentry-tty writes the typed passphrase to stdin if it times out

paolobrignoli25 via Gnupg-users <[email protected]> Mon, 25 May 2026 18:38:37 +0000
Newsgroups gmane.comp.encryption.gpg.user
Message-ID <6IU1q8FF8B2jvSkpbEwPbBDkmCveOmcQ71CA5cqVQ6jqoFanzLc0S_PalVB1USG9nldUllu5vsjJF-v3INyvoVwImlr-gLpH29Z21FcIL4o=@proton.me>
[N] tc@fedora ~> cat .gnupg/gpg-agent.conf
no-allow-loopback-pinentry
pinentry-program /usr/bin/pinentry-tty
pinentry-timeout 2

[N] tc@fedora ~> gpg -d /tmp/file.gpg
gpg: encrypted with cv25519 key, ID E667CEDA83DFC1C0, created 2026-05-25
      "tom"
Please enter the passphrase to unlock the OpenPGP secret key:
"tom"
255-bit ECDH key, ID E667CEDA83DFC1C0,
created 2026-05-25 (main key ID 6EC11A7823852CC9).

Passphrase:
gpg: public key decryption failed: Timeout
gpg: decryption failed: Timeout
[I] tc@fedora ~ [2]> fef
#that's what i wrote before pinentry timed out, in my shell's stdin
#(not that writing it to stdout or stderr would be better,
#but i thought that was relevant). here is the proof:
fish: fef: command not found...
# my shell tried to run `fef' after i pressed enter

Is this an intended, or at least known behavior?
Should i report it as a bug?
i found nothing on the bug tracker.