aboutsummaryrefslogtreecommitdiffstats
path: root/scd/app.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2019-02-06 13:07:42 +0000
committerWerner Koch <[email protected]>2019-02-11 09:59:32 +0000
commit14816c798099925e47908e7ce415412d72fbe28e (patch)
treea798e566d395cbdf8643f2d89252c741dd3bde25 /scd/app.c
parentscd: Fix parameter name of app_change_key. (diff)
downloadgnupg-14816c798099925e47908e7ce415412d72fbe28e.tar.gz
gnupg-14816c798099925e47908e7ce415412d72fbe28e.zip
scd: Make app_genkey and supporting ISO function more flexible.
* scd/app.c (app_genkey): Add arg keytype. * scd/app-common.h (struct app_ctx_s): Fitto for the genkey member. * scd/command.c (cmd_genkey): Adjust for change. * scd/iso7816.c (do_generate_keypair): Replace arg read_only by new args p1 and p2. (iso7816_read_public_key): Adjust for this. (iso7816_generate_keypair): Add new args p1 and p2. * scd/app-openpgp.c (do_genkey): Adjust for changes. -- The OpenPGP card creates keys according to parameters read from a data object. Other cards we are about to implement require a direct specification of the requested keytype. This patch implements the required changes. Signed-off-by: Werner Koch <[email protected]> (cherry picked from commit 9a9cb0257aebb1480b999fdf9d90904083eb8e3c)
Diffstat (limited to '')
-rw-r--r--scd/app.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/scd/app.c b/scd/app.c
index 6391c3b78..ac9a6582c 100644
--- a/scd/app.c
+++ b/scd/app.c
@@ -865,8 +865,8 @@ app_writekey (app_t app, ctrl_t ctrl,
/* Perform a SETATTR operation. */
gpg_error_t
-app_genkey (app_t app, ctrl_t ctrl, const char *keynostr, unsigned int flags,
- time_t createtime,
+app_genkey (app_t app, ctrl_t ctrl, const char *keynostr,
+ const char *keytype, unsigned int flags, time_t createtime,
gpg_error_t (*pincb)(void*, const char *, char **),
void *pincb_arg)
{
@@ -881,7 +881,7 @@ app_genkey (app_t app, ctrl_t ctrl, const char *keynostr, unsigned int flags,
err = lock_app (app, ctrl);
if (err)
return err;
- err = app->fnc.genkey (app, ctrl, keynostr, flags,
+ err = app->fnc.genkey (app, ctrl, keynostr, keytype, flags,
createtime, pincb, pincb_arg);
unlock_app (app);
if (opt.verbose)