From: Bodo Möller Date: Thu, 26 May 2005 04:30:49 +0000 (+0000) Subject: check BN_copy() return value X-Git-Tag: OpenSSL_0_9_8-beta3~13^2~8 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=c61f571ce02ab6ab8ffe0c33a03b4a32ae83516e;p=oweals%2Fopenssl.git check BN_copy() return value --- diff --git a/crypto/bn/bn_blind.c b/crypto/bn/bn_blind.c index 40e742dbad..ca22d4f8bd 100644 --- a/crypto/bn/bn_blind.c +++ b/crypto/bn/bn_blind.c @@ -207,6 +207,8 @@ int BN_BLINDING_convert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx) int BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) { + int ret = 1; + bn_check_top(n); if ((b->A == NULL) || (b->Ai == NULL)) @@ -216,9 +218,13 @@ int BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b, BN_CTX *ctx) } if (r != NULL) - BN_copy(r, b->Ai); + { + if (!BN_copy(r, b->Ai)) ret=0; + } - return BN_mod_mul(n,n,b->A,b->mod,ctx); + if (!BN_mod_mul(n,n,b->A,b->mod,ctx)) ret=0; + + return ret; } int BN_BLINDING_invert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx) @@ -351,4 +357,3 @@ err: return ret; } -