clear dso pointer in case of an error
[openssl.git] / engines / e_atalla.c
index cc6c9695f0d2e4ab1cce15d8125cd2664a02f3d7..8e11048d054fff2518167de82128f2ac92c532a3 100644 (file)
 #include <openssl/buffer.h>
 #include <openssl/dso.h>
 #include <openssl/engine.h>
 #include <openssl/buffer.h>
 #include <openssl/dso.h>
 #include <openssl/engine.h>
+#include <openssl/rsa.h>
+#include <openssl/dsa.h>
+#include <openssl/dh.h>
+#include <openssl/bn.h>
 
 #ifndef OPENSSL_NO_HW
 #ifndef OPENSSL_NO_HW_ATALLA
 
 #ifndef OPENSSL_NO_HW
 #ifndef OPENSSL_NO_HW_ATALLA
@@ -380,6 +384,7 @@ static int atalla_init(ENGINE *e)
 err:
        if(atalla_dso)
                DSO_free(atalla_dso);
 err:
        if(atalla_dso)
                DSO_free(atalla_dso);
+       atalla_dso = NULL;
        p_Atalla_GetHardwareConfig = NULL;
        p_Atalla_RSAPrivateKeyOpFn = NULL;
        p_Atalla_GetPerformanceStatistics = NULL;
        p_Atalla_GetHardwareConfig = NULL;
        p_Atalla_RSAPrivateKeyOpFn = NULL;
        p_Atalla_GetPerformanceStatistics = NULL;