mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
g10: Fix keytocard.
g10/call-agent.h (agent_scd_learn): Add FORCE option. g10/call-agent.c (agent_scd_learn): Implement FORCE option. g10/keygen.c (gen_card_key): Follow the change of option. g10/card-util.c (change_pin, card_status, factory_reset): Likewise. g10/keyedit.c (keyedit_menu): Update private key storage by agent_scd_learn. -- This is not a perfect solution since there is a possibility user unplug card before quitting 'gpg --keyedit' session. Usually, it works well. GnuPG-bug-id: 1846
This commit is contained in:
parent
4ffadb74b3
commit
f82c4a6d0d
5 changed files with 24 additions and 12 deletions
|
@ -81,7 +81,7 @@ change_pin (int unblock_v2, int allow_admin)
|
|||
struct agent_card_info_s info;
|
||||
int rc;
|
||||
|
||||
rc = agent_scd_learn (&info);
|
||||
rc = agent_scd_learn (&info, 0);
|
||||
if (rc)
|
||||
{
|
||||
log_error (_("OpenPGP card not available: %s\n"),
|
||||
|
@ -374,7 +374,7 @@ card_status (estream_t fp, char *serialno, size_t serialnobuflen)
|
|||
if (serialno && serialnobuflen)
|
||||
*serialno = 0;
|
||||
|
||||
rc = agent_scd_learn (&info);
|
||||
rc = agent_scd_learn (&info, 0);
|
||||
if (rc)
|
||||
{
|
||||
if (opt.with_colons)
|
||||
|
@ -1702,7 +1702,7 @@ factory_reset (void)
|
|||
but tries to find out something about the card first.
|
||||
*/
|
||||
|
||||
err = agent_scd_learn (&info);
|
||||
err = agent_scd_learn (&info, 0);
|
||||
if (gpg_err_code (err) == GPG_ERR_OBJ_TERM_STATE
|
||||
&& gpg_err_source (err) == GPG_ERR_SOURCE_SCD)
|
||||
termstate = 1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue