From d6688e45fa2f987f3ffd324e19922468beee5ddc Mon Sep 17 00:00:00 2001 From: Bernd Edlinger Date: Sun, 3 Dec 2023 11:41:51 +0100 Subject: [PATCH] Fix a possible memleak in opt_verify The ASN1_OBJECT otmp was leaked if X509_VERIFY_PARAM_add0_policy fails. Reviewed-by: Shane Lontis Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/22922) --- apps/lib/opt.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/lib/opt.c b/apps/lib/opt.c index 2d61ac9a78..0490c39c25 100644 --- a/apps/lib/opt.c +++ b/apps/lib/opt.c @@ -726,7 +726,12 @@ int opt_verify(int opt, X509_VERIFY_PARAM *vpm) opt_printf_stderr("%s: Invalid Policy %s\n", prog, opt_arg()); return 0; } - X509_VERIFY_PARAM_add0_policy(vpm, otmp); + if (!X509_VERIFY_PARAM_add0_policy(vpm, otmp)) { + ASN1_OBJECT_free(otmp); + opt_printf_stderr("%s: Internal error adding Policy %s\n", + prog, opt_arg()); + return 0; + } break; case OPT_V_PURPOSE: /* purpose name -> purpose index */