From 0a9053eff0406c6799ee201013194200c0ed3487 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 21 Aug 2019 12:05:24 +0200 Subject: [PATCH] scd:nks: Extend keypairinfo with usage flags. * scd/app-nks.c (do_learn_status_core): Return usage. Signed-off-by: Werner Koch --- scd/app-nks.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/scd/app-nks.c b/scd/app-nks.c index 6fe367433..9371932ac 100644 --- a/scd/app-nks.c +++ b/scd/app-nks.c @@ -401,6 +401,7 @@ do_learn_status_core (app_t app, ctrl_t ctrl, unsigned int flags, int is_sigg) char ct_buf[100], id_buf[100]; int i; const char *tag; + const char *usage; if (is_sigg) tag = "SIGG"; @@ -450,9 +451,19 @@ do_learn_status_core (app_t app, ctrl_t ctrl, unsigned int flags, int is_sigg) { snprintf (id_buf, sizeof id_buf, "NKS-%s.%04X", tag, filelist[i].fid); + if (filelist[i].issignkey && filelist[i].isenckey) + usage = "sae"; + else if (filelist[i].issignkey) + usage = "sa"; + else if (filelist[i].isenckey) + usage = "e"; + else + usage = ""; + send_status_info (ctrl, "KEYPAIRINFO", gripstr, 40, id_buf, strlen (id_buf), + usage, strlen (usage), NULL, (size_t)0); } }