summaryrefslogtreecommitdiffstats
path: root/crypto/bn/bn_blind.c
diff options
context:
space:
mode:
authorRalf S. Engelschall <rse@openssl.org>1998-12-21 11:00:56 +0000
committerRalf S. Engelschall <rse@openssl.org>1998-12-21 11:00:56 +0000
commitdfeab0689f69c0b4bd3480ffd37a9cacc2f17d9c (patch)
tree2f74e0cfd76a9e092548a9bf52e579aef984299b /crypto/bn/bn_blind.c
parent58964a492275ca9a59a0cd9c8155cb2491b4b909 (diff)
Import of old SSLeay release: SSLeay 0.9.1b (unreleased)SSLeay
Diffstat (limited to 'crypto/bn/bn_blind.c')
-rw-r--r--crypto/bn/bn_blind.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/crypto/bn/bn_blind.c b/crypto/bn/bn_blind.c
index a7b34f0bf0..35be32b99a 100644
--- a/crypto/bn/bn_blind.c
+++ b/crypto/bn/bn_blind.c
@@ -67,8 +67,14 @@ BIGNUM *mod;
{
BN_BLINDING *ret=NULL;
+ bn_check_top(Ai);
+ bn_check_top(mod);
+
if ((ret=(BN_BLINDING *)Malloc(sizeof(BN_BLINDING))) == NULL)
+ {
BNerr(BN_F_BN_BLINDING_NEW,ERR_R_MALLOC_FAILURE);
+ return(NULL);
+ }
memset(ret,0,sizeof(BN_BLINDING));
if ((ret->A=BN_new()) == NULL) goto err;
if ((ret->Ai=BN_new()) == NULL) goto err;
@@ -78,7 +84,7 @@ BIGNUM *mod;
return(ret);
err:
if (ret != NULL) BN_BLINDING_free(ret);
- return(ret);
+ return(NULL);
}
void BN_BLINDING_free(r)
@@ -114,6 +120,8 @@ BIGNUM *n;
BN_BLINDING *b;
BN_CTX *ctx;
{
+ bn_check_top(n);
+
if ((b->A == NULL) || (b->Ai == NULL))
{
BNerr(BN_F_BN_BLINDING_CONVERT,BN_R_NOT_INITALISED);
@@ -128,6 +136,8 @@ BN_BLINDING *b;
BN_CTX *ctx;
{
int ret;
+
+ bn_check_top(n);
if ((b->A == NULL) || (b->Ai == NULL))
{
BNerr(BN_F_BN_BLINDING_INVERT,BN_R_NOT_INITALISED);