summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/dh/dh_err.c
diff options
context:
space:
mode:
authortb <>2022-01-10 12:00:52 +0000
committertb <>2022-01-10 12:00:52 +0000
commit66fc1114c3900ed41771dba70d33a853a0a925f4 (patch)
treea4d80645cff5817beab5299ea58a2124c2e04ea1 /src/lib/libcrypto/dh/dh_err.c
parenta447c077ad67d6e81ed1a4fbe9003875add773c2 (diff)
downloadopenbsd-66fc1114c3900ed41771dba70d33a853a0a925f4.tar.gz
openbsd-66fc1114c3900ed41771dba70d33a853a0a925f4.tar.bz2
openbsd-66fc1114c3900ed41771dba70d33a853a0a925f4.zip
Provide DH_check*_ex and many error codes
DH_check{,_pub_key}_ex() wrap their non-ex versions to translate the flags argument of the original functions into OpenSSL errors. For this almost a dozen new error codes need to be added. DH_params_check{,_ex}() is a new version of DH_check that only performs a cheap subset of the checks. They are needed to implement EVP_PKEY_{public,param}_check() (observe the consistent naming) although the actual implementation of EVP_PKEY_param_check() chose to use DH_check_ex(). As far as I can tell, the only raison d'ĂȘtre of the _ex functions and error codes is to spew them to stderr in a couple of openssl(1) commands. This couldn't have been solved differently... These functions will not be exposed publicly. ok inoguchi jsing
Diffstat (limited to 'src/lib/libcrypto/dh/dh_err.c')
-rw-r--r--src/lib/libcrypto/dh/dh_err.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/lib/libcrypto/dh/dh_err.c b/src/lib/libcrypto/dh/dh_err.c
index 497f88436e..a387c37cca 100644
--- a/src/lib/libcrypto/dh/dh_err.c
+++ b/src/lib/libcrypto/dh/dh_err.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: dh_err.c,v 1.16 2017/01/29 17:49:22 beck Exp $ */ 1/* $OpenBSD: dh_err.c,v 1.17 2022/01/10 12:00:52 tb Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 1999-2011 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 1999-2011 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -90,6 +90,17 @@ static ERR_STRING_DATA DH_str_reasons[]=
90{ERR_REASON(DH_R_NO_PARAMETERS_SET) ,"no parameters set"}, 90{ERR_REASON(DH_R_NO_PARAMETERS_SET) ,"no parameters set"},
91{ERR_REASON(DH_R_NO_PRIVATE_VALUE) ,"no private value"}, 91{ERR_REASON(DH_R_NO_PRIVATE_VALUE) ,"no private value"},
92{ERR_REASON(DH_R_PARAMETER_ENCODING_ERROR),"parameter encoding error"}, 92{ERR_REASON(DH_R_PARAMETER_ENCODING_ERROR),"parameter encoding error"},
93{ERR_REASON(DH_R_CHECK_INVALID_J_VALUE) ,"check invalid j value"},
94{ERR_REASON(DH_R_CHECK_INVALID_Q_VALUE) ,"check invalid q value"},
95{ERR_REASON(DH_R_CHECK_PUBKEY_INVALID) ,"check pubkey invalid"},
96{ERR_REASON(DH_R_CHECK_PUBKEY_TOO_LARGE) ,"check pubkey too large"},
97{ERR_REASON(DH_R_CHECK_PUBKEY_TOO_SMALL) ,"check pubkey too small"},
98{ERR_REASON(DH_R_CHECK_P_NOT_PRIME) ,"check p not prime"},
99{ERR_REASON(DH_R_CHECK_P_NOT_SAFE_PRIME) ,"check p not safe prime"},
100{ERR_REASON(DH_R_CHECK_Q_NOT_PRIME) ,"check q not prime"},
101{ERR_REASON(DH_R_MISSING_PUBKEY) ,"missing pubkey"},
102{ERR_REASON(DH_R_NOT_SUITABLE_GENERATOR) ,"not suitable generator"},
103{ERR_REASON(DH_R_UNABLE_TO_CHECK_GENERATOR),"unable to check generator"},
93{0,NULL} 104{0,NULL}
94 }; 105 };
95 106