1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-02 22:46:30 +02:00

gpg: Add agent_scd_keyinfo to retrieve available card keys.

* g10/call-agent.c (card_keyinfo_cb, agent_scd_free_keyinfo)
(agent_scd_keyinfo): New.
* g10/call-agent.h: Define new functions.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
NIIBE Yutaka 2020-01-16 13:01:46 +09:00
parent 1aa2a0a46d
commit 8240a70c31
2 changed files with 178 additions and 1 deletions

View file

@ -76,7 +76,14 @@ struct agent_card_info_s
int uif[3]; /* True if User Interaction Flag is on. */
};
/* Information from scdaemon for card keys. */
struct card_key_info_s
{
struct card_key_info_s *next;
char keygrip[41];
char *serialno;
char *idstr;
};
/* Release the card info structure. */
void agent_release_card_info (struct agent_card_info_s *info);
@ -91,6 +98,13 @@ gpg_error_t agent_scd_keypairinfo (ctrl_t ctrl, const char *keyref,
/* Return list of cards. */
int agent_scd_cardlist (strlist_t *result);
/* Free card key information. */
void agent_scd_free_keyinfo (struct card_key_info_s *l);
/* Return card key information. */
gpg_error_t agent_scd_keyinfo (const char *keygrip, int cap,
struct card_key_info_s **result);
/* Return the serial number, possibly select by DEMAND. */
int agent_scd_serialno (char **r_serialno, const char *demand);