gnupg/agent
Werner Koch c9aadcb3a2 agent: Support pinentries with integrated repeat passphrase feature.
* agent/agent.h (struct pin_entry_info_s): Add fields repeat_okay and
with_repeat.
* agent/call-pinentry.c (close_button_status_cb): Rewrite and check
for PIN_REPEAT.  Change users to check only the relevant bit.
(agent_askpin): Support repeat logic of new Pinentries.

* agent/command-ssh.c (ssh_identity_register): Use the new repeat
feature.
* agent/genkey.c (agent_ask_new_passphrase): Ditto.

--

If we need to confirm a passphrase entry (e.g. for new passphrase) we
set a flag into the pinentry info block.  The we try to use the new
pinentry command SETREPEATERROR; if that fails, we continue as usual.
If that succeeds we ask the pinentry to show the repeat (confirmation)
prompt and on successful return we set another flag in the pinentry
info block so that the caller can skip its own confirmation check. A
new status line from the pinentry indicates that the feature is
actually supported (it may not be supported on certain systems for
example when using the ncurses backend).

Signed-off-by: Werner Koch <wk@gnupg.org>
2014-10-24 20:40:12 +02:00
..
ChangeLog-2011 Generate the ChangeLog from commit logs. 2011-12-01 11:09:02 +01:00
Makefile.am Fix Makefile regression. 2013-06-26 23:23:18 +02:00
agent.h agent: Support pinentries with integrated repeat passphrase feature. 2014-10-24 20:40:12 +02:00
cache.c gpg: Improve passphrase caching. 2014-09-17 15:12:08 +02:00
call-pinentry.c agent: Support pinentries with integrated repeat passphrase feature. 2014-10-24 20:40:12 +02:00
call-scd.c Silence several warnings when building under Windows. 2014-03-07 16:06:35 +01:00
command-ssh.c agent: Support pinentries with integrated repeat passphrase feature. 2014-10-24 20:40:12 +02:00
command.c Remove support for the GPG_AGENT_INFO envvar. 2014-10-03 11:58:58 +02:00
cvt-openpgp.c agent: Fix import of OpenPGP EdDSA keys. 2014-09-02 11:22:07 +02:00
cvt-openpgp.h Implement unattended OpenPGP secret key import. 2013-05-22 10:14:57 +02:00
divert-scd.c gpg: Make decryption with the OpenPGP card work. 2013-08-28 17:40:32 +02:00
findkey.c gpg: Improve passphrase caching. 2014-09-17 15:12:08 +02:00
genkey.c agent: Support pinentries with integrated repeat passphrase feature. 2014-10-24 20:40:12 +02:00
gpg-agent-w32info.rc w32: Add icons and version information. 2013-05-07 21:35:48 +02:00
gpg-agent.c Use a unique capitalization for "Note:". 2014-10-10 15:29:42 +02:00
keyformat.txt gpg: Finish experimental support for Ed25519. 2014-05-07 13:27:43 +02:00
learncard.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
pkdecrypt.c agent: Return NO_SECKEY instead of ENONET for PKSIGN and others. 2014-08-18 15:42:54 +02:00
pksign.c agent: Init a local variable in the error case. 2014-09-18 15:32:17 +02:00
preset-passphrase.c w32: Include winsock2.h to silence warnings. 2014-03-07 14:18:43 +01:00
protect-tool.c Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +01:00
protect.c agent: Allow key unprotection using AES-256. 2014-09-01 10:15:21 +02:00
t-protect.c Implement unattended OpenPGP secret key import. 2013-05-22 10:14:57 +02:00
trans.c Changed to GPLv3. 2007-07-04 19:49:40 +00:00
trustlist.c agent: Make --allow-mark-trusted the default. 2014-03-07 09:48:26 +01:00
w32main.c Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +01:00
w32main.h Changed to GPLv3. 2007-07-04 19:49:40 +00:00