summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/libcrypto/dh/dh_check.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/lib/libcrypto/dh/dh_check.c b/src/lib/libcrypto/dh/dh_check.c
index 1d20952e26..ee405f92b1 100644
--- a/src/lib/libcrypto/dh/dh_check.c
+++ b/src/lib/libcrypto/dh/dh_check.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: dh_check.c,v 1.24 2022/01/10 12:00:52 tb Exp $ */ 1/* $OpenBSD: dh_check.c,v 1.25 2022/07/13 18:38:20 tb 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 *
@@ -269,9 +269,7 @@ DH_check_pub_key(const DH *dh, const BIGNUM *pub_key, int *flags)
269 *flags |= DH_CHECK_PUBKEY_TOO_SMALL; 269 *flags |= DH_CHECK_PUBKEY_TOO_SMALL;
270 270
271 /* max_pub_key = dh->p - 1 */ 271 /* max_pub_key = dh->p - 1 */
272 if (BN_copy(max_pub_key, dh->p) == NULL) 272 if (!BN_sub(max_pub_key, dh->p, BN_value_one()))
273 goto err;
274 if (!BN_sub_word(max_pub_key, 1))
275 goto err; 273 goto err;
276 274
277 if (BN_cmp(pub_key, max_pub_key) >= 0) 275 if (BN_cmp(pub_key, max_pub_key) >= 0)