aboutsummaryrefslogtreecommitdiffstats
path: root/scd/app-openpgp.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2007-07-05 16:58:19 +0000
committerWerner Koch <[email protected]>2007-07-05 16:58:19 +0000
commit4631bc8ddf86b3917bf786c315273d8b1c7798e8 (patch)
tree2022343674f6703aefb41f2e142765ba319dbf5f /scd/app-openpgp.c
parent2007-07-05 Marcus Brinkmann <[email protected]> (diff)
downloadgnupg-4631bc8ddf86b3917bf786c315273d8b1c7798e8.tar.gz
gnupg-4631bc8ddf86b3917bf786c315273d8b1c7798e8.zip
Fixed card key generation of gpg2.
Reveal less information about timings while generating a key.
Diffstat (limited to '')
-rw-r--r--scd/app-openpgp.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c
index 893cc572f..bf7c0afc5 100644
--- a/scd/app-openpgp.c
+++ b/scd/app-openpgp.c
@@ -1981,8 +1981,9 @@ do_writekey (app_t app, ctrl_t ctrl,
/* Handle the GENKEY command. */
static gpg_error_t
do_genkey (app_t app, ctrl_t ctrl, const char *keynostr, unsigned int flags,
- gpg_error_t (*pincb)(void*, const char *, char **),
- void *pincb_arg)
+ time_t createtime,
+ gpg_error_t (*pincb)(void*, const char *, char **),
+ void *pincb_arg)
{
int rc;
char numbuf[30];
@@ -2014,7 +2015,7 @@ do_genkey (app_t app, ctrl_t ctrl, const char *keynostr, unsigned int flags,
if (rc)
return rc;
- /* Prepare for key generation by verifying the ADmin PIN. */
+ /* Prepare for key generation by verifying the Admin PIN. */
rc = verify_chv3 (app, pincb, pincb_arg);
if (rc)
goto leave;
@@ -2067,7 +2068,7 @@ do_genkey (app_t app, ctrl_t ctrl, const char *keynostr, unsigned int flags,
/* log_printhex ("RSA e:", e, elen); */
send_key_data (ctrl, "e", e, elen);
- created_at = gnupg_get_time ();
+ created_at = createtime? createtime : gnupg_get_time ();
sprintf (numbuf, "%lu", (unsigned long)created_at);
send_status_info (ctrl, "KEY-CREATED-AT",
numbuf, (size_t)strlen(numbuf), NULL, 0);