handle the case when BN_new returns NULL
This commit is contained in:
parent
55b3c877c7
commit
58f0f52e67
1 changed files with 13 additions and 5 deletions
|
@ -458,12 +458,20 @@ BIGNUM *bn_dup_expand(const BIGNUM *b, int words)
|
|||
if (a)
|
||||
{
|
||||
r = BN_new();
|
||||
r->top = b->top;
|
||||
r->dmax = words;
|
||||
r->neg = b->neg;
|
||||
r->d = a;
|
||||
if (r)
|
||||
{
|
||||
r->top = b->top;
|
||||
r->dmax = words;
|
||||
r->neg = b->neg;
|
||||
r->d = a;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* r == NULL, BN_new failure */
|
||||
OPENSSL_free(a);
|
||||
}
|
||||
}
|
||||
/* Otherwise, there was an error in allocation in
|
||||
/* If a == NULL, there was an error in allocation in
|
||||
internal_bn_expand(), and NULL should be returned */
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue