diff options
Diffstat (limited to '')
-rw-r--r-- | g10/keygen.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/g10/keygen.c b/g10/keygen.c index be8a8e512..1f325ceb5 100644 --- a/g10/keygen.c +++ b/g10/keygen.c @@ -3420,9 +3420,25 @@ gen_card_key_with_backup (int algo, int keyno, int is_primary, } else { + byte array[MAX_FINGERPRINT_LEN]; + char *fprbuf, *p; + iobuf_close (fp); iobuf_ioctl (NULL, 2, 0, (char*)fname); log_info (_("NOTE: backup of card key saved to `%s'\n"), fname); + + fingerprint_from_sk (sk, array, &n); + p = fprbuf = xmalloc (MAX_FINGERPRINT_LEN*2 + 1 + 1); + for (i=0; i < n ; i++, p += 2) + sprintf (p, "%02X", array[i]); + *p++ = ' '; + *p = 0; + + write_status_text_and_buffer (STATUS_BACKUP_KEY_CREATED, + fprbuf, + fname, strlen (fname), + 0); + xfree (fprbuf); } free_packet (pkt); m_free (pkt); |