summaryrefslogtreecommitdiff
path: root/lib/libcrypto/bn/bn_mul.c
diff options
context:
space:
mode:
authorDamien Miller <djm@cvs.openbsd.org>2010-10-01 22:59:02 +0000
committerDamien Miller <djm@cvs.openbsd.org>2010-10-01 22:59:02 +0000
commit367b2622e0527401666a65476f4111fdda2e3c12 (patch)
treedc507d2394eb3b616bd9eae56d17671899a24a05 /lib/libcrypto/bn/bn_mul.c
parentae9cbeba0dc25f0e95e6a0e50b6c161bf6384e17 (diff)
resolve conflicts, fix local changes
Diffstat (limited to 'lib/libcrypto/bn/bn_mul.c')
-rw-r--r--lib/libcrypto/bn/bn_mul.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/libcrypto/bn/bn_mul.c b/lib/libcrypto/bn/bn_mul.c
index b848c8cc60f..a0e9ec3b469 100644
--- a/lib/libcrypto/bn/bn_mul.c
+++ b/lib/libcrypto/bn/bn_mul.c
@@ -1028,17 +1028,19 @@ int BN_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
assert(j <= al || j <= bl);
k = j+j;
t = BN_CTX_get(ctx);
+ if (t == NULL)
+ goto err;
if (al > j || bl > j)
{
- bn_wexpand(t,k*4);
- bn_wexpand(rr,k*4);
+ if (bn_wexpand(t,k*4) == NULL) goto err;
+ if (bn_wexpand(rr,k*4) == NULL) goto err;
bn_mul_part_recursive(rr->d,a->d,b->d,
j,al-j,bl-j,t->d);
}
else /* al <= j || bl <= j */
{
- bn_wexpand(t,k*2);
- bn_wexpand(rr,k*2);
+ if (bn_wexpand(t,k*2) == NULL) goto err;
+ if (bn_wexpand(rr,k*2) == NULL) goto err;
bn_mul_recursive(rr->d,a->d,b->d,
j,al-j,bl-j,t->d);
}