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
|
@ -673,7 +673,7 @@ learn_status_cb (void *opaque, const char *line)
|
|||
|
||||
/* Call the scdaemon to learn about a smartcard */
|
||||
int
|
||||
agent_scd_learn (struct agent_card_info_s *info)
|
||||
agent_scd_learn (struct agent_card_info_s *info, int force)
|
||||
{
|
||||
int rc;
|
||||
struct default_inq_parm_s parm;
|
||||
|
@ -701,7 +701,8 @@ agent_scd_learn (struct agent_card_info_s *info)
|
|||
return rc;
|
||||
|
||||
parm.ctx = agent_ctx;
|
||||
rc = assuan_transact (agent_ctx, "LEARN --sendinfo",
|
||||
rc = assuan_transact (agent_ctx,
|
||||
force ? "LEARN --sendinfo --force" : "LEARN --sendinfo",
|
||||
dummy_data_cb, NULL, default_inq_cb, &parm,
|
||||
learn_status_cb, info);
|
||||
/* Also try to get the key attributes. */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue