#include <internal/evp_int.h>
#include <internal/conf.h>
#include <internal/async.h>
+#ifndef OPENSSL_NO_ENGINE
#include <internal/engine.h>
+#endif
#include <openssl/comp.h>
#include <internal/err.h>
#include <stdlib.h>
config_inited = 1;
}
+#ifndef OPENSSL_NO_ASYNC
static OPENSSL_INIT_ONCE async = OPENSSL_INIT_ONCE_STATIC_INIT;
static int async_inited = 0;
static void ossl_init_async(void)
async_init();
async_inited = 1;
}
+#endif
#ifndef OPENSSL_NO_ENGINE
static int engine_inited = 0;
if (locals == NULL)
return;
+#ifndef OPENSSL_NO_ASYNC
if (locals->async) {
#ifdef OPENSSL_INIT_DEBUG
fprintf(stderr, "OPENSSL_INIT: ossl_init_thread_stop: "
#endif
ASYNC_cleanup_thread();
}
+#endif
if (locals->err_state) {
#ifdef OPENSSL_INIT_DEBUG
CRYPTO_w_unlock(CRYPTO_LOCK_INIT);
}
+#ifndef OPENSSL_NO_ASYNC
if (opts & OPENSSL_INIT_ASYNC) {
ossl_init_once_run(&async, ossl_init_async);
}
-
+#endif
#ifndef OPENSSL_NO_ENGINE
if (opts & OPENSSL_INIT_ENGINE_OPENSSL) {
ossl_init_once_run(&engine_openssl, ossl_init_engine_openssl);