From c61f571ce02ab6ab8ffe0c33a03b4a32ae83516e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bodo=20M=C3=B6ller?= Date: Thu, 26 May 2005 04:30:49 +0000 Subject: [PATCH] check BN_copy() return value --- crypto/bn/bn_blind.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) 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; } - -- 2.34.1