forked from wolfSSL/wolfssl
Merge pull request #6000 from SparkiDev/dsa_force_zero
DSA: Don't force zero MPs on memory allocation failure
This commit is contained in:
@ -927,33 +927,33 @@ int wc_DsaSign(const byte* digest, byte* out, DsaKey* key, WC_RNG* rng)
|
|||||||
|
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
if (k) {
|
if (k) {
|
||||||
if (ret != MP_INIT_E)
|
if ((ret != MP_INIT_E) && (ret != MEMORY_E))
|
||||||
mp_forcezero(k);
|
mp_forcezero(k);
|
||||||
XFREE(k, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(k, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
}
|
}
|
||||||
if (kInv) {
|
if (kInv) {
|
||||||
if (ret != MP_INIT_E)
|
if ((ret != MP_INIT_E) && (ret != MEMORY_E))
|
||||||
mp_forcezero(kInv);
|
mp_forcezero(kInv);
|
||||||
XFREE(kInv, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(kInv, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
}
|
}
|
||||||
if (r) {
|
if (r) {
|
||||||
if (ret != MP_INIT_E)
|
if ((ret != MP_INIT_E) && (ret != MEMORY_E))
|
||||||
mp_clear(r);
|
mp_clear(r);
|
||||||
XFREE(r, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(r, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
}
|
}
|
||||||
if (s) {
|
if (s) {
|
||||||
if (ret != MP_INIT_E)
|
if ((ret != MP_INIT_E) && (ret != MEMORY_E))
|
||||||
mp_clear(s);
|
mp_clear(s);
|
||||||
XFREE(s, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(s, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
}
|
}
|
||||||
if (H) {
|
if (H) {
|
||||||
if (ret != MP_INIT_E)
|
if ((ret != MP_INIT_E) && (ret != MEMORY_E))
|
||||||
mp_clear(H);
|
mp_clear(H);
|
||||||
XFREE(H, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(H, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
}
|
}
|
||||||
#ifndef WOLFSSL_MP_INVMOD_CONSTANT_TIME
|
#ifndef WOLFSSL_MP_INVMOD_CONSTANT_TIME
|
||||||
if (b) {
|
if (b) {
|
||||||
if (ret != MP_INIT_E)
|
if ((ret != MP_INIT_E) && (ret != MEMORY_E))
|
||||||
mp_forcezero(b);
|
mp_forcezero(b);
|
||||||
XFREE(b, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(b, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user