From 19611682bdc9d37804de144dabc2da96fe7ecb28 Mon Sep 17 00:00:00 2001 From: Doug Engert Date: Thu, 1 Apr 2021 10:51:27 -0500 Subject: [PATCH] Fix for #2283 C_Sign fails ECDSA when card can do HASH on card Do not truncate ECDSA input to size of key if card or driver will do HASH. On branch Fix_for_2283_ECDSA Changes to be committed: modified: src/libopensc/pkcs15-sec.c --- src/libopensc/pkcs15-sec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libopensc/pkcs15-sec.c b/src/libopensc/pkcs15-sec.c index 249cb062..4fa623ff 100644 --- a/src/libopensc/pkcs15-sec.c +++ b/src/libopensc/pkcs15-sec.c @@ -737,7 +737,7 @@ int sc_pkcs15_compute_signature(struct sc_pkcs15_card *p15card, * But if card is going to do the hash, pass in all the data */ else if (senv.algorithm == SC_ALGORITHM_EC && - (senv.flags & SC_ALGORITHM_ECDSA_HASHES) == 0) { + (senv.algorithm_flags & SC_ALGORITHM_ECDSA_HASHES) == 0) { inlen = MIN(inlen, (prkey->field_length+7)/8); }