From 16354f11afade2a3a8f7031e8b9e4fd6cb4c87b3 Mon Sep 17 00:00:00 2001 From: Frank Morgner Date: Fri, 5 Jan 2018 12:37:20 +0100 Subject: [PATCH] OpenPGP: fixed selecting Applet fixes https://github.com/OpenSC/OpenSC/issues/1230 --- src/libopensc/card-openpgp.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c index 12e048aa..177f9e3b 100644 --- a/src/libopensc/card-openpgp.c +++ b/src/libopensc/card-openpgp.c @@ -333,11 +333,15 @@ pgp_match_card(sc_card_t *card) else { sc_path_t partial_aid; unsigned char aid[16]; + sc_file_t *file = NULL; /* select application "OpenPGP" */ sc_format_path("D276:0001:2401", &partial_aid); partial_aid.type = SC_PATH_TYPE_DF_NAME; - if (SC_SUCCESS == iso_ops->select_file(card, &partial_aid, NULL)) { + /* OpenPGP card only supports selection *with* requested FCI */ + i = iso_ops->select_file(card, &partial_aid, &file); + sc_file_free(file); + if (SC_SUCCESS == i) { /* read information from AID */ i = sc_get_data(card, 0x004F, aid, sizeof aid); if (i == 16) {