diff options
author | tb <> | 2022-01-10 12:00:52 +0000 |
---|---|---|
committer | tb <> | 2022-01-10 12:00:52 +0000 |
commit | 66fc1114c3900ed41771dba70d33a853a0a925f4 (patch) | |
tree | a4d80645cff5817beab5299ea58a2124c2e04ea1 /src/lib/libcrypto/dh/dh_err.c | |
parent | a447c077ad67d6e81ed1a4fbe9003875add773c2 (diff) | |
download | openbsd-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.c | 13 |
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 | ||