From: Jiasheng Jiang Date: Fri, 17 Jun 2022 09:07:15 +0000 (+0800) Subject: crypto/x509/by_store.c: Add check for OPENSSL_strdup X-Git-Tag: openssl-3.2.0-alpha1~2503 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e163969d3580e5b797fcebde0d3000302912ef18;p=thirdparty%2Fopenssl.git crypto/x509/by_store.c: Add check for OPENSSL_strdup As the potential failure of the OPENSSL_strdup(), it should be better to check the return value and return error if fails. Signed-off-by: Jiasheng Jiang Reviewed-by: Tomas Mraz Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/18593) --- diff --git a/crypto/x509/by_store.c b/crypto/x509/by_store.c index b9feb038b81..81170b18682 100644 --- a/crypto/x509/by_store.c +++ b/crypto/x509/by_store.c @@ -119,12 +119,16 @@ static int by_store_ctrl_ex(X509_LOOKUP *ctx, int cmd, const char *argp, { STACK_OF(OPENSSL_STRING) *uris = X509_LOOKUP_get_method_data(ctx); + char *data = OPENSSL_strdup(argp); + if (data == NULL) { + return 0; + } if (uris == NULL) { uris = sk_OPENSSL_STRING_new_null(); X509_LOOKUP_set_method_data(ctx, uris); } - return sk_OPENSSL_STRING_push(uris, OPENSSL_strdup(argp)) > 0; + return sk_OPENSSL_STRING_push(uris, data) > 0; } case X509_L_LOAD_STORE: /* This is a shortcut for quick loading of specific containers */