From: kinichiro Date: Thu, 5 Dec 2019 11:00:50 +0000 (+0900) Subject: Return 1 when openssl req -addext kv is duplicated X-Git-Tag: OpenSSL_1_1_1e~109 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=39d9123891845f203465dfda181f5c24b45756d1;p=oweals%2Fopenssl.git Return 1 when openssl req -addext kv is duplicated CLA: trivial Fixes #10273 Reviewed-by: Tomas Mraz Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/10578) (cherry picked from commit 1aeec3dbc2d62f902698b1eba9ed31cbd436f9dc) --- diff --git a/apps/req.c b/apps/req.c index d717c493e5..a603907cd5 100644 --- a/apps/req.c +++ b/apps/req.c @@ -200,9 +200,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; }