X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=crypto%2Finit.c;h=3bfe4502ebbe7f7776c9cbbc67a264466831f24d;hp=404d9c0e9566f9ffed9675add144f3b44a6d9c60;hb=a5e3ac13d602173e2820e7f4399fa89e25db7821;hpb=f9e550341281b0d344f7a5e7ac2ace79f88a3184 diff --git a/crypto/init.c b/crypto/init.c index 404d9c0e95..3bfe4502eb 100644 --- a/crypto/init.c +++ b/crypto/init.c @@ -58,13 +58,13 @@ #include #include #include -#include +#include #include #include #include #include #include -#include +#include #include #include #include @@ -220,7 +220,6 @@ static void ossl_init_no_config(void) config_inited = 1; } -#ifndef OPENSSL_NO_ASYNC static CRYPTO_ONCE async = CRYPTO_ONCE_STATIC_INIT; static int async_inited = 0; static void ossl_init_async(void) @@ -231,7 +230,6 @@ static void ossl_init_async(void) async_init(); async_inited = 1; } -#endif #ifndef OPENSSL_NO_ENGINE static CRYPTO_ONCE engine_openssl = CRYPTO_ONCE_STATIC_INIT; @@ -339,7 +337,6 @@ static void ossl_init_thread_stop(struct thread_local_inits_st *locals) if (locals == NULL) return; -#ifndef OPENSSL_NO_ASYNC if (locals->async) { #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: ossl_init_thread_stop: " @@ -347,7 +344,6 @@ static void ossl_init_thread_stop(struct thread_local_inits_st *locals) #endif ASYNC_cleanup_thread(); } -#endif if (locals->err_state) { #ifdef OPENSSL_INIT_DEBUG @@ -431,13 +427,12 @@ void OPENSSL_cleanup(void) if (zlib_inited) { #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " - "COMP_zlib_cleanup()\n"); + "comp_zlib_cleanup_internal()\n"); #endif - COMP_zlib_cleanup(); + comp_zlib_cleanup_internal(); } #endif -#ifndef OPENSSL_NO_ASYNC if (async_inited) { # ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " @@ -445,21 +440,20 @@ void OPENSSL_cleanup(void) # endif async_deinit(); } -#endif if (load_crypto_strings_inited) { #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " - "ERR_free_strings()\n"); + "err_free_strings_intern()\n"); #endif - ERR_free_strings(); + err_free_strings_intern(); } CRYPTO_THREAD_cleanup_local(&threadstopkey); #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " - "RAND_cleanup()\n"); + "rand_cleanup_intern()\n"); fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " "CONF_modules_free()\n"); #ifndef OPENSSL_NO_ENGINE @@ -467,7 +461,7 @@ void OPENSSL_cleanup(void) "ENGINE_cleanup()\n"); #endif fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " - "CRYPTO_cleanup_all_ex_data()\n"); + "crypto_cleanup_all_ex_data_intern()\n"); fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " "BIO_sock_cleanup()\n"); fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " @@ -477,19 +471,19 @@ void OPENSSL_cleanup(void) #endif /* * Note that cleanup order is important: - * - RAND_cleanup could call an ENINGE's RAND cleanup function so must be - * called before ENGINE_cleanup() + * - rand_cleanup_intern could call an ENINGE's RAND cleanup function so + * must be called before ENGINE_cleanup() * - ENGINEs use CRYPTO_EX_DATA and therefore, must be cleaned up * before the ex data handlers are wiped in CRYPTO_cleanup_all_ex_data(). * - CONF_modules_free() can end up in ENGINE code so must be called before * ENGINE_cleanup() */ - RAND_cleanup(); + rand_cleanup_intern(); CONF_modules_free(); #ifndef OPENSSL_NO_ENGINE ENGINE_cleanup(); #endif - CRYPTO_cleanup_all_ex_data(); + crypto_cleanup_all_ex_data_intern(); #ifndef OPENSSL_NO_SOCK BIO_sock_cleanup(); #endif @@ -565,11 +559,10 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) return 0; } -#ifndef OPENSSL_NO_ASYNC if ((opts & OPENSSL_INIT_ASYNC) && !CRYPTO_THREAD_run_once(&async, ossl_init_async)) return 0; -#endif + #ifndef OPENSSL_NO_ENGINE if ((opts & OPENSSL_INIT_ENGINE_OPENSSL) && !CRYPTO_THREAD_run_once(&engine_openssl,