Move a declaration that's private to libcrypto
[openssl.git] / crypto / ec / ec_kmeth.c
index c656cc96deca044eaad524be6cb2f026cd5ec51e..003421eabe8e350db5029550a7fe0c32d7b1c7af 100644 (file)
@@ -53,9 +53,7 @@
 
 #include <string.h>
 #include <openssl/ec.h>
-#ifndef OPENSSL_NO_ENGINE
-# include <openssl/engine.h>
-#endif
+#include <openssl/engine.h>
 #include <openssl/err.h>
 #include "ec_lcl.h"
 
@@ -143,6 +141,7 @@ EC_KEY *EC_KEY_new_method(ENGINE *engine)
         if (!ENGINE_init(engine)) {
             ECerr(EC_F_EC_KEY_NEW_METHOD, ERR_R_ENGINE_LIB);
             CRYPTO_free_ex_data(CRYPTO_EX_INDEX_EC_KEY, ret, &ret->ex_data);
+            CRYPTO_THREAD_lock_free(ret->lock);
             OPENSSL_free(ret);
             return NULL;
         }
@@ -155,6 +154,7 @@ EC_KEY *EC_KEY_new_method(ENGINE *engine)
             ECerr(EC_F_EC_KEY_NEW_METHOD, ERR_R_ENGINE_LIB);
             ENGINE_finish(ret->engine);
             CRYPTO_free_ex_data(CRYPTO_EX_INDEX_EC_KEY, ret, &ret->ex_data);
+            CRYPTO_THREAD_lock_free(ret->lock);
             OPENSSL_free(ret);
             return NULL;
         }