]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - crypto/engine/eng_lib.c
Add checks on CRYPTO_new_ex_data return value
[thirdparty/openssl.git] / crypto / engine / eng_lib.c
index d0bc716bb3cd67f12b4f5a6439d57e6814f3beff..5bcd24bcf8860fd95c84e1f87ce7382eaa58a54f 100644 (file)
@@ -83,7 +83,10 @@ ENGINE *ENGINE_new(void)
     }
     ret->struct_ref = 1;
     engine_ref_debug(ret, 0, 1);
-    CRYPTO_new_ex_data(CRYPTO_EX_INDEX_ENGINE, ret, &ret->ex_data);
+    if (!CRYPTO_new_ex_data(CRYPTO_EX_INDEX_ENGINE, ret, &ret->ex_data)) {
+        OPENSSL_free(ret);
+        return NULL;
+    }
     return ret;
 }