aboutsummaryrefslogtreecommitdiffstats
path: root/scd/app-common.h
diff options
context:
space:
mode:
authorNIIBE Yutaka <[email protected]>2021-07-21 08:08:40 +0000
committerNIIBE Yutaka <[email protected]>2021-07-21 08:22:26 +0000
commit0d6b4210cf31d1c3ca0e8b034537a158fe3caca8 (patch)
treea2e4e971e3445f33e50fe9cf733e098c1d09d7e1 /scd/app-common.h
parentscd: Fix access to list of cards (2/3). (diff)
downloadgnupg-0d6b4210cf31d1c3ca0e8b034537a158fe3caca8.tar.gz
gnupg-0d6b4210cf31d1c3ca0e8b034537a158fe3caca8.zip
scd: Fix access to list of cards (3/3).
* scd/app-common.h (card_reset): Simplify more. (select_additional_application): Supply CARD. (card_ref, card_unref): Remove. (card_get, card_put): New. * scd/app.c (card_reset): No locking/unlocking inside. (app_switch_current_card): Fix comment. (select_additional_application): No locking/unlocking inside. (do_with_keygrip): New, unlocked version. (card_get): New, with support of KEYGRIP. (card_unref): Remove. (card_put): New. (app_write_learn_status, app_readcert: No locking/unlocking inside. (app_readkey, app_getattr, app_setattr, app_sign, app_auth): Likewise. (app_decipher, app_writecert, app_writekey): Likewise. (app_genkey, app_get_challenge, app_change_pin): Likewise. (app_check_pin, app_switch_active_app): Likewise. * scd/command.c (do_reset): Use card_get/card_put. (open_card_with_request): Use card_get/card_put, return CARD locked. (cmd_serialno): Follow the change of open_card_with_request. (cmd_switchapp): Use card_get/card_put. (cmd_learn, cmd_readcert, cmd_readkey, cmd_pksign): Likewise. (cmd_pkauth, cmd_pkdecrypt, cmd_getattr): Likewise. (cmd_setattr, cmd_writecert, cmd_writekey): Likewise. (cmd_genkey, cmd_random, cmd_passwd): Likewise. (cmd_checkpin, cmd_getinfo, cmd_restart): Likewise. (cmd_disconnect, cmd_apdu, cmd_devinfo): Likewise. Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'scd/app-common.h')
-rw-r--r--scd/app-common.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/scd/app-common.h b/scd/app-common.h
index d1b0a9a17..2eeffbe95 100644
--- a/scd/app-common.h
+++ b/scd/app-common.h
@@ -255,11 +255,12 @@ void application_notify_card_reset (int slot);
gpg_error_t check_application_conflict (card_t card, const char *name,
const unsigned char *serialno_bin,
size_t serialno_bin_len);
-gpg_error_t card_reset (card_t card, ctrl_t ctrl);
+gpg_error_t card_reset (card_t card);
gpg_error_t select_application (ctrl_t ctrl, const char *name,
int scan, const unsigned char *serialno_bin,
size_t serialno_bin_len);
-gpg_error_t select_additional_application (ctrl_t ctrl, const char *name);
+gpg_error_t select_additional_application (card_t card,
+ ctrl_t ctrl, const char *name);
gpg_error_t app_switch_current_card (ctrl_t ctrl,
const unsigned char *serialno,
@@ -269,8 +270,8 @@ gpg_error_t app_switch_active_app (card_t card, ctrl_t ctrl,
char *get_supported_applications (void);
-card_t card_ref (card_t card);
-void card_unref (card_t card);
+card_t card_get (ctrl_t ctrl, const char *keygrip);
+void card_put (card_t card);
void card_unref_locked (card_t card);
gpg_error_t app_munge_serialno (card_t card);