]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Fix coverity finding
authorDmitry Belyavskiy <beldmit@gmail.com>
Wed, 19 Feb 2025 14:27:57 +0000 (15:27 +0100)
committerTomas Mraz <tomas@openssl.org>
Thu, 20 Feb 2025 15:28:22 +0000 (16:28 +0100)
Coverity ID: 1643094

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/26831)

crypto/evp/skeymgmt_meth.c

index 67d6ea3446a1addb42b1d57ddd93cb43e3220030..10a320e58a60bc16633d444f77de986b97fb644b 100644 (file)
@@ -116,8 +116,13 @@ static void *skeymgmt_from_algorithm(int name_id,
         ERR_raise(ERR_LIB_EVP, EVP_R_INVALID_PROVIDER_FUNCTIONS);
         return NULL;
     }
+
+    if (!ossl_provider_up_ref(prov)) {
+        EVP_SKEYMGMT_free(skeymgmt);
+        ERR_raise(ERR_LIB_EVP, EVP_R_INITIALIZATION_ERROR);
+        return NULL;
+    }
     skeymgmt->prov = prov;
-    ossl_provider_up_ref(prov);
 
     return skeymgmt;
 }