EVP_Cleanup() when quitting.
[tinc] / src / tincd.c
index 1d44a8a..8869cca 100644 (file)
@@ -35,6 +35,7 @@
 #include <openssl/rsa.h>
 #include <openssl/pem.h>
 #include <openssl/evp.h>
+#include <openssl/engine.h>
 
 #include <lzo1x.h>
 
@@ -448,6 +449,9 @@ int main(int argc, char **argv)
 
        RAND_load_file("/dev/urandom", 1024);
 
+       ENGINE_load_builtin_engines();
+       ENGINE_register_all_complete();
+
        OpenSSL_add_all_algorithms();
 
        if(generate_keys) {
@@ -505,6 +509,8 @@ end:
 #ifndef HAVE_MINGW
        remove_pid(pidfilename);
 #endif
+
+       EVP_cleanup();
        
        return status;
 }