]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Coverity 1521557: Error handling issues
authorPauli <pauli@openssl.org>
Wed, 1 Mar 2023 01:22:49 +0000 (12:22 +1100)
committerPauli <pauli@openssl.org>
Thu, 2 Mar 2023 23:10:22 +0000 (10:10 +1100)
Check the return from DSA_set0_key and generate an error on failure.
Technically a false positive since the function always returns success.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/20409)

crypto/dsa/dsa_backend.c

index 924ccbdc0bad46f16c7e72bdc1667e7df7d4327c..ceaf6e6877f36f5c1ee0b4355b170b3695e20c04 100644 (file)
@@ -173,7 +173,10 @@ DSA *ossl_dsa_key_from_pkcs8(const PKCS8_PRIV_KEY_INFO *p8inf,
         ERR_raise(ERR_LIB_DSA, DSA_R_BN_ERROR);
         goto dsaerr;
     }
-    DSA_set0_key(dsa, dsa_pubkey, dsa_privkey);
+    if (!DSA_set0_key(dsa, dsa_pubkey, dsa_privkey)) {
+        ERR_raise(ERR_LIB_DSA, ERR_R_INTERNAL_ERROR);
+        goto dsaerr;
+    }
 
     goto done;