summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/dh/dh.h
diff options
context:
space:
mode:
authortb <>2022-01-05 20:30:16 +0000
committertb <>2022-01-05 20:30:16 +0000
commitb86fb16a7f2ecb74d2fd9c11640ea10f44a18497 (patch)
treeb748d90efbcd3ee528dd36bf85cdae37b207ce00 /src/lib/libcrypto/dh/dh.h
parent21c9a0ff72332d0ed2c5b5bd6f41a189b9fc2685 (diff)
downloadopenbsd-b86fb16a7f2ecb74d2fd9c11640ea10f44a18497.tar.gz
openbsd-b86fb16a7f2ecb74d2fd9c11640ea10f44a18497.tar.bz2
openbsd-b86fb16a7f2ecb74d2fd9c11640ea10f44a18497.zip
Prepare to provide DH_get0_{p,q,g,{priv,pub}_key}()
These are accessors that allow getting one specific DH member. They are less error prone than the current getters DH_get0_{pqg,key}(). They are used by many ports and will also be used in base for this reason. Who can remember whether the pub_key or the priv_key goes first in DH_get0_key()? ok inoguchi jsing
Diffstat (limited to 'src/lib/libcrypto/dh/dh.h')
-rw-r--r--src/lib/libcrypto/dh/dh.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/libcrypto/dh/dh.h b/src/lib/libcrypto/dh/dh.h
index f569f3f7c3..8e57c191c4 100644
--- a/src/lib/libcrypto/dh/dh.h
+++ b/src/lib/libcrypto/dh/dh.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: dh.h,v 1.26 2021/11/29 19:34:51 tb Exp $ */ 1/* $OpenBSD: dh.h,v 1.27 2022/01/05 20:30:16 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 *
@@ -199,6 +199,13 @@ void DH_get0_pqg(const DH *dh, const BIGNUM **p, const BIGNUM **q,
199int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g); 199int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g);
200void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key); 200void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key);
201int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key); 201int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key);
202#if defined(LIBRESSL_OPAQUE_DH) || defined(LIBRESSL_CRYPTO_INTERNAL)
203const BIGNUM *DH_get0_p(const DH *dh);
204const BIGNUM *DH_get0_q(const DH *dh);
205const BIGNUM *DH_get0_g(const DH *dh);
206const BIGNUM *DH_get0_priv_key(const DH *dh);
207const BIGNUM *DH_get0_pub_key(const DH *dh);
208#endif
202void DH_clear_flags(DH *dh, int flags); 209void DH_clear_flags(DH *dh, int flags);
203int DH_test_flags(const DH *dh, int flags); 210int DH_test_flags(const DH *dh, int flags);
204void DH_set_flags(DH *dh, int flags); 211void DH_set_flags(DH *dh, int flags);