agent: Improve support for externally cached passwords.
authorNeal H. Walfield <neal@g10code.com>
Wed, 6 May 2015 13:20:32 +0000 (15:20 +0200)
committerNeal H. Walfield <neal@g10code.com>
Thu, 7 May 2015 13:03:27 +0000 (15:03 +0200)
commit56b5c9f94f2e55d096be585ed061ccf1c9ec0de6
tree1fa93938e1cfd7504520282f7b8cc1ff0f53adad
parent74944330ba7229ed0cbe23cc0f573962a444bd07
agent: Improve support for externally cached passwords.

* agent/call-pinentry.c (PINENTRY_STATUS_PASSWORD_FROM_CACHE): New
constant.
(pinentry_status_cb): Add it to *FLAGS if PASSWORD_FROM_CACHE was
provided.
(agent_askpin): Pass "OPTION allow-external-password-cache" to the
pinentry.  Always pass SETKEYINFO to the pinentry.  If there is no
stable identifier, then use "--clear".  If the password is incorrect
and PINENTRY_STATUS_PASSWORD_FROM_CACHE is set in *PINENTRY_STATUS,
then decrement PININFO->FAILED_TRIES.

--

Signed-off-by: Neal H. Walfield <neal@g10code.com>
agent/call-pinentry.c