Como evitar que o gpg-agent perca o tempo limite durante a coleta da frase secreta?

4

Estou chamando gpg2 em um script CLI para criptografia simétrica de um arquivo local. Parece que o gpg-agent solicita uma senha por meio de alguma interface de usuário baseada em texto da CLI. Desde que eu esteja por perto para inserir a senha, tudo funciona bem. Se eu não for, no entanto, acabará por falhar com esta mensagem:

gpg-agent[15338]: command get_passphrase failed: Operation cancelled
gpg: cancelled by user
gpg: error creating passphrase: Operation cancelled
gpg: symmetric encryption of 'XXXX.tar' failed: Operation cancelled

Existe alguma maneira de desativar totalmente esse tempo limite?

Eu gostaria que o prompt da frase secreta permanecesse na tela indefinidamente até que eu digitasse algo.

    
por rcampbell 29.01.2017 / 10:52

2 respostas

1

Em gpg-agent.conf (veja gpg-agent (1) ), tente as seguintes opções:

pinentry-timeout 0
pinentry-program /usr/bin/pinentry-curses --timeout 0

(Você pode achar pinentry-tty um pouco melhor de usar embora.)

    
por 29.01.2017 / 14:32
1

O que funcionou para mim (gpg 2.1.11) foi apenas definir a opção pinentry-timeout para um valor grande (como 24 horas), adicionando o seguinte ao meu arquivo ~/.gnupg/gpg-agent.conf :

# time until pinentry closes in seconds
pinentry-timeout 86400
    
por 25.01.2018 / 06:33