mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
gpg: Make card key generation work again.
* g10/call-agent.c (agent_scd_learn): Rename from agent_learn. (agent_learn): New. * g10/keygen.c (gen_card_key): Call new agent-learn. -- Without a shadow key we can't create the self-signatures. Thus we need to issue the learn command after each key generation. Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
6d9491842d
commit
1b8decc476
4 changed files with 44 additions and 5 deletions
13
g10/keygen.c
13
g10/keygen.c
|
@ -4510,6 +4510,19 @@ gen_card_key (int algo, int keyno, int is_primary, kbnode_t pub_root,
|
|||
return err;
|
||||
}
|
||||
|
||||
/* Send the learn command so that the agent creates a shadow key for
|
||||
card key. We need to do that now so that we are able to create
|
||||
the self-signatures. */
|
||||
err = agent_learn ();
|
||||
if (err)
|
||||
{
|
||||
/* Oops: Card removed during generation. */
|
||||
log_error (_("OpenPGP card not available: %s\n"), gpg_strerror (err));
|
||||
xfree (pkt);
|
||||
xfree (pk);
|
||||
return err;
|
||||
}
|
||||
|
||||
if (*timestamp != info.created_at)
|
||||
log_info ("NOTE: the key does not use the suggested creation date\n");
|
||||
*timestamp = info.created_at;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue