From 139333f85aa5fa3a99c22f8305701d20d588415e Mon Sep 17 00:00:00 2001 From: andbil Date: Sun, 3 Aug 2014 12:15:58 +0200 Subject: [PATCH] Fix error when signing with Swedish BankID card Added card type check in addition to check for SC_SEC_ENV_KEY_REF_PRESENT Added card type check in addition to check for SC_SEC_ENV_KEY_REF_PRESENT --- src/libopensc/card-setcos.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libopensc/card-setcos.c b/src/libopensc/card-setcos.c index 3e5d499f..eb9e936b 100644 --- a/src/libopensc/card-setcos.c +++ b/src/libopensc/card-setcos.c @@ -613,7 +613,9 @@ static int setcos_set_security_env2(sc_card_t *card, memcpy(p, env->file_ref.value, env->file_ref.len); p += env->file_ref.len; } - if (env->flags & SC_SEC_ENV_KEY_REF_PRESENT) { + if (env->flags & SC_SEC_ENV_KEY_REF_PRESENT && + !(card->type == SC_CARD_TYPE_SETCOS_NIDEL || + card->type == SC_CARD_TYPE_SETCOS_FINEID_V2_2048)) { if (env->flags & SC_SEC_ENV_KEY_REF_ASYMMETRIC) *p++ = 0x83; else