diff options
author | Tomas Mraz <tomas@openssl.org> | 2022-04-28 17:04:05 +0200 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2022-05-02 08:35:54 +0200 |
commit | 359dad5178285d5471f2a57a5aa99c1f588dffcb (patch) | |
tree | c0adbd6dfa0051f22d89dbb5362188a9983da9cb /crypto/evp | |
parent | fe5c5cb85197aec7d68ab095b866ed22076850d0 (diff) |
fix_dh_paramgen_type: Avoid crash with invalid paramgen type
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/18202)
Diffstat (limited to 'crypto/evp')
-rw-r--r-- | crypto/evp/ctrl_params_translate.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/crypto/evp/ctrl_params_translate.c b/crypto/evp/ctrl_params_translate.c index 74df2fd1a3..08137ab256 100644 --- a/crypto/evp/ctrl_params_translate.c +++ b/crypto/evp/ctrl_params_translate.c @@ -1072,7 +1072,11 @@ static int fix_dh_paramgen_type(enum state state, return 0; if (state == PRE_CTRL_STR_TO_PARAMS) { - ctx->p2 = (char *)ossl_dh_gen_type_id2name(atoi(ctx->p2)); + if ((ctx->p2 = (char *)ossl_dh_gen_type_id2name(atoi(ctx->p2))) + == NULL) { + ERR_raise(ERR_LIB_EVP, EVP_R_INVALID_VALUE); + return 0; + } ctx->p1 = strlen(ctx->p2); } |