From d75b3f99acfeba36b2d2edd05c800d1307b58dc1 Mon Sep 17 00:00:00 2001 From: David Garske Date: Mon, 5 Mar 2018 15:29:34 -0800 Subject: [PATCH] Proper fix for Pluton ECC sign. --- wolfcrypt/src/ecc.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/wolfcrypt/src/ecc.c b/wolfcrypt/src/ecc.c index f511bdf27..097a9e067 100644 --- a/wolfcrypt/src/ecc.c +++ b/wolfcrypt/src/ecc.c @@ -3588,11 +3588,14 @@ int wc_ecc_sign_hash(const byte* in, word32 inlen, byte* out, word32 *outlen, return BAD_COND_E; } #elif defined(PLUTON_CRYPTO_ECC) - /* perform ECC sign */ - err = Crypto_EccSign(in, inlen, out, outlen); - if (err != CRYPTO_RES_SUCCESS || - *outlen != ECC_MAX_CRYPTO_HW_SIZE*2) { - return BAD_COND_E; + { + /* perform ECC sign */ + word32 raw_sig_size = *outlen; + err = Crypto_EccSign(in, inlen, out, &raw_sig_size); + if (err != CRYPTO_RES_SUCCESS || + raw_sig_size != ECC_MAX_CRYPTO_HW_SIZE*2) { + return BAD_COND_E; + } } #endif