diff options
Diffstat (limited to 'scd/app-nks.c')
-rw-r--r-- | scd/app-nks.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/scd/app-nks.c b/scd/app-nks.c index 7440c1830..451ff8f01 100644 --- a/scd/app-nks.c +++ b/scd/app-nks.c @@ -608,7 +608,7 @@ do_readcert (app_t app, const char *certid, certificate parsing code in commands.c:cmd_readkey. For internal use PK and PKLEN may be NULL to just check for an existing key. */ static gpg_error_t -do_readkey (app_t app, int advanced, const char *keyid, +do_readkey (app_t app, ctrl_t ctrl, int advanced, const char *keyid, unsigned char **pk, size_t *pklen) { gpg_error_t err; @@ -616,6 +616,8 @@ do_readkey (app_t app, int advanced, const char *keyid, size_t buflen[2]; unsigned short path[1] = { 0x4500 }; + (void)ctrl; + if (advanced) return GPG_ERR_NOT_SUPPORTED; @@ -683,7 +685,6 @@ do_writekey (app_t app, ctrl_t ctrl, size_t rsa_n_len, rsa_e_len; unsigned int nbits; - (void)ctrl; (void)pincb; (void)pincb_arg; @@ -692,7 +693,7 @@ do_writekey (app_t app, ctrl_t ctrl, else return gpg_error (GPG_ERR_INV_ID); - if (!force && !do_readkey (app, 0, keyid, NULL, NULL)) + if (!force && !do_readkey (app, ctrl, 0, keyid, NULL, NULL)) return gpg_error (GPG_ERR_EEXIST); /* Parse the S-expression. */ @@ -841,7 +842,7 @@ verify_pin (app_t app, int pwid, const char *desc, that callback should return the PIN in an allocated buffer and store that in the 3rd argument. */ static gpg_error_t -do_sign (app_t app, const char *keyidstr, int hashalgo, +do_sign (app_t app, ctrl_t ctrl, const char *keyidstr, int hashalgo, gpg_error_t (*pincb)(void*, const char *, char **), void *pincb_arg, const void *indata, size_t indatalen, @@ -861,6 +862,8 @@ do_sign (app_t app, const char *keyidstr, int hashalgo, + the largest OID prefix. */ size_t datalen; + (void)ctrl; + if (!keyidstr || !*keyidstr) return gpg_error (GPG_ERR_INV_VALUE); switch (indatalen) @@ -976,7 +979,7 @@ do_sign (app_t app, const char *keyidstr, int hashalgo, If a PIN is required the PINCB will be used to ask for the PIN; it should return the PIN in an allocated buffer and put it into PIN. */ static gpg_error_t -do_decipher (app_t app, const char *keyidstr, +do_decipher (app_t app, ctrl_t ctrl, const char *keyidstr, gpg_error_t (*pincb)(void*, const char *, char **), void *pincb_arg, const void *indata, size_t indatalen, @@ -988,6 +991,7 @@ do_decipher (app_t app, const char *keyidstr, int fid; int kid; + (void)ctrl; (void)r_info; if (!keyidstr || !*keyidstr || !indatalen) @@ -1263,7 +1267,7 @@ do_change_pin (app_t app, ctrl_t ctrl, const char *pwidstr, /* Perform a simple verify operation. KEYIDSTR should be NULL or empty. */ static gpg_error_t -do_check_pin (app_t app, const char *pwidstr, +do_check_pin (app_t app, ctrl_t ctrl, const char *pwidstr, gpg_error_t (*pincb)(void*, const char *, char **), void *pincb_arg) { @@ -1272,6 +1276,8 @@ do_check_pin (app_t app, const char *pwidstr, int is_sigg; const char *desc; + (void)ctrl; + desc = parse_pwidstr (pwidstr, 0, &is_sigg, &pwid); if (!desc) return gpg_error (GPG_ERR_INV_ID); |