From 1e260eeaae433d0dbaf4e12f4804b7972414c5ce Mon Sep 17 00:00:00 2001 From: Karel Miko Date: Fri, 24 Feb 2017 21:13:22 +0100 Subject: [PATCH] fir coverity finding: dsa_import double free --- src/pk/dsa/dsa_import.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pk/dsa/dsa_import.c b/src/pk/dsa/dsa_import.c index 1793176..54361cb 100644 --- a/src/pk/dsa/dsa_import.c +++ b/src/pk/dsa/dsa_import.c @@ -103,10 +103,12 @@ int dsa_import(const unsigned char *in, unsigned long inlen, dsa_key *key) PKA_DSA, tmpbuf, &tmpbuf_len, LTC_ASN1_SEQUENCE, params, 3); if (err != CRYPT_OK) { + XFREE(tmpbuf); goto LBL_ERR; } if ((err=der_decode_integer(tmpbuf, tmpbuf_len, key->y)) != CRYPT_OK) { + XFREE(tmpbuf); goto LBL_ERR; } @@ -125,7 +127,6 @@ LBL_OK: return CRYPT_OK; LBL_ERR: - XFREE(tmpbuf); mp_clear_multi(key->p, key->g, key->q, key->x, key->y, NULL); return err; }