summaryrefslogtreecommitdiffstats
path: root/apps/req.c
diff options
context:
space:
mode:
authorkinichiro <kinichiro.inoguchi@gmail.com>2019-12-05 20:00:50 +0900
committerTomas Mraz <tmraz@fedoraproject.org>2019-12-16 15:05:35 +0100
commit1aeec3dbc2d62f902698b1eba9ed31cbd436f9dc (patch)
treebe8e908f0a58b4f79c322cb89282937851e18a2b /apps/req.c
parent146113827135b4c646531a48f388e43add6ff871 (diff)
Return 1 when openssl req -addext kv is duplicated
CLA: trivial Fixes #10273 Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10578)
Diffstat (limited to 'apps/req.c')
-rw-r--r--apps/req.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/apps/req.c b/apps/req.c
index 76bbbeb555..87994ceb7c 100644
--- a/apps/req.c
+++ b/apps/req.c
@@ -214,9 +214,12 @@ static int duplicated(LHASH_OF(OPENSSL_STRING) *addexts, char *kv)
*p = '\0';
/* Finally have a clean "key"; see if it's there [by attempt to add it]. */
- if ((p = (char *)lh_OPENSSL_STRING_insert(addexts, (OPENSSL_STRING*)kv))
- != NULL || lh_OPENSSL_STRING_error(addexts)) {
- OPENSSL_free(p != NULL ? p : kv);
+ p = (char *)lh_OPENSSL_STRING_insert(addexts, (OPENSSL_STRING*)kv);
+ if (p != NULL) {
+ OPENSSL_free(p);
+ return 1;
+ } else if (lh_OPENSSL_STRING_error(addexts)) {
+ OPENSSL_free(kv);
return -1;
}