summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/libcrypto/bn/bn_gcd.c11
-rw-r--r--src/lib/libcrypto/gost/gostr341001.c14
2 files changed, 16 insertions, 9 deletions
diff --git a/src/lib/libcrypto/bn/bn_gcd.c b/src/lib/libcrypto/bn/bn_gcd.c
index 4661b35571..f3a23701b1 100644
--- a/src/lib/libcrypto/bn/bn_gcd.c
+++ b/src/lib/libcrypto/bn/bn_gcd.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bn_gcd.c,v 1.18 2022/11/26 16:08:51 tb Exp $ */ 1/* $OpenBSD: bn_gcd.c,v 1.19 2022/12/01 02:58:31 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -277,7 +277,8 @@ BN_mod_inverse_internal(BIGNUM *in, const BIGNUM *a, const BIGNUM *n, BN_CTX *ct
277 if (R == NULL) 277 if (R == NULL)
278 goto err; 278 goto err;
279 279
280 BN_one(X); 280 if (!BN_one(X))
281 goto err;
281 BN_zero(Y); 282 BN_zero(Y);
282 if (BN_copy(B, a) == NULL) 283 if (BN_copy(B, a) == NULL)
283 goto err; 284 goto err;
@@ -591,7 +592,8 @@ BN_mod_inverse_no_branch(BIGNUM *in, const BIGNUM *a, const BIGNUM *n,
591 if (R == NULL) 592 if (R == NULL)
592 goto err; 593 goto err;
593 594
594 BN_one(X); 595 if (!BN_one(X))
596 goto err;
595 BN_zero(Y); 597 BN_zero(Y);
596 if (BN_copy(B, a) == NULL) 598 if (BN_copy(B, a) == NULL)
597 goto err; 599 goto err;
@@ -755,7 +757,8 @@ BN_gcd_no_branch(BIGNUM *in, const BIGNUM *a, const BIGNUM *n,
755 if ((T = BN_CTX_get(ctx)) == NULL) 757 if ((T = BN_CTX_get(ctx)) == NULL)
756 goto err; 758 goto err;
757 759
758 BN_one(X); 760 if (!BN_one(X))
761 goto err;
759 BN_zero(Y); 762 BN_zero(Y);
760 if (BN_copy(B, a) == NULL) 763 if (BN_copy(B, a) == NULL)
761 goto err; 764 goto err;
diff --git a/src/lib/libcrypto/gost/gostr341001.c b/src/lib/libcrypto/gost/gostr341001.c
index 13f053dae8..79fddb11b0 100644
--- a/src/lib/libcrypto/gost/gostr341001.c
+++ b/src/lib/libcrypto/gost/gostr341001.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: gostr341001.c,v 1.10 2022/11/26 16:08:53 tb Exp $ */ 1/* $OpenBSD: gostr341001.c,v 1.11 2022/12/01 02:58:31 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2014 Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> 3 * Copyright (c) 2014 Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
4 * Copyright (c) 2005-2006 Cryptocom LTD 4 * Copyright (c) 2005-2006 Cryptocom LTD
@@ -178,8 +178,10 @@ gost2001_do_sign(BIGNUM *md, GOST_KEY *eckey)
178 goto err; 178 goto err;
179 if (BN_mod_ct(e, md, order, ctx) == 0) 179 if (BN_mod_ct(e, md, order, ctx) == 0)
180 goto err; 180 goto err;
181 if (BN_is_zero(e)) 181 if (BN_is_zero(e)) {
182 BN_one(e); 182 if (!BN_one(e))
183 goto err;
184 }
183 if ((k = BN_CTX_get(ctx)) == NULL) 185 if ((k = BN_CTX_get(ctx)) == NULL)
184 goto err; 186 goto err;
185 if ((X = BN_CTX_get(ctx)) == NULL) 187 if ((X = BN_CTX_get(ctx)) == NULL)
@@ -289,8 +291,10 @@ gost2001_do_verify(BIGNUM *md, ECDSA_SIG *sig, GOST_KEY *ec)
289 291
290 if (BN_mod_ct(e, md, order, ctx) == 0) 292 if (BN_mod_ct(e, md, order, ctx) == 0)
291 goto err; 293 goto err;
292 if (BN_is_zero(e)) 294 if (BN_is_zero(e)) {
293 BN_one(e); 295 if (!BN_one(e))
296 goto err;
297 }
294 if ((v = BN_mod_inverse_ct(v, e, order, ctx)) == NULL) 298 if ((v = BN_mod_inverse_ct(v, e, order, ctx)) == NULL)
295 goto err; 299 goto err;
296 if (BN_mod_mul(z1, sig->s, v, order, ctx) == 0) 300 if (BN_mod_mul(z1, sig->s, v, order, ctx) == 0)