diff options
Diffstat (limited to 'crypto/init.c')
| -rw-r--r-- | crypto/init.c | 155 |
1 files changed, 76 insertions, 79 deletions
diff --git a/crypto/init.c b/crypto/init.c index 659a660eeced..f6d31a962826 100644 --- a/crypto/init.c +++ b/crypto/init.c @@ -98,26 +98,26 @@ static int win32atexit(void) DEFINE_RUN_ONCE_STATIC(ossl_init_register_atexit) { #ifndef OPENSSL_NO_ATEXIT -# ifdef OPENSSL_INIT_DEBUG +#ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: ossl_init_register_atexit()\n"); -# endif -# ifndef OPENSSL_SYS_UEFI -# if defined(_WIN32) && !defined(__BORLANDC__) +#endif +#ifndef OPENSSL_SYS_UEFI +#if defined(_WIN32) && !defined(__BORLANDC__) /* We use _onexit() in preference because it gets called on DLL unload */ if (_onexit(win32atexit) == NULL) return 0; -# else +#else if (atexit(OPENSSL_cleanup) != 0) return 0; -# endif -# endif +#endif +#endif #endif return 1; } DEFINE_RUN_ONCE_STATIC_ALT(ossl_init_no_register_atexit, - ossl_init_register_atexit) + ossl_init_register_atexit) { #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: ossl_init_no_register_atexit ok!\n"); @@ -133,23 +133,23 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_load_crypto_nodelete) #if !defined(OPENSSL_USE_NODELETE) \ && !defined(OPENSSL_NO_PINSHARED) -# if defined(DSO_WIN32) && !defined(_WIN32_WCE) +#if defined(DSO_WIN32) && !defined(_WIN32_WCE) { HMODULE handle = NULL; BOOL ret; /* We don't use the DSO route for WIN32 because there is a better way */ ret = GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS - | GET_MODULE_HANDLE_EX_FLAG_PIN, - (void *)&base_inited, &handle); + | GET_MODULE_HANDLE_EX_FLAG_PIN, + (void *)&base_inited, &handle); OSSL_TRACE1(INIT, - "ossl_init_load_crypto_nodelete: " - "obtained DSO reference? %s\n", - (ret == TRUE ? "No!" : "Yes.")); + "ossl_init_load_crypto_nodelete: " + "obtained DSO reference? %s\n", + (ret == TRUE ? "No!" : "Yes.")); return (ret == TRUE) ? 1 : 0; } -# elif !defined(DSO_NONE) +#elif !defined(DSO_NONE) /* * Deliberately leak a reference to ourselves. This will force the library * to remain loaded until the atexit() handler is run at process exit. @@ -168,11 +168,11 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_load_crypto_nodelete) * already. */ OSSL_TRACE1(INIT, "obtained DSO reference? %s\n", - (dso == NULL ? "No!" : "Yes.")); + (dso == NULL ? "No!" : "Yes.")); DSO_free(dso); err_unshelve_state(err); } -# endif +#endif #endif return 1; @@ -195,7 +195,7 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_load_crypto_strings) } DEFINE_RUN_ONCE_STATIC_ALT(ossl_init_no_load_crypto_strings, - ossl_init_load_crypto_strings) + ossl_init_load_crypto_strings) { /* Do nothing in this case */ return 1; @@ -216,7 +216,7 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_add_all_ciphers) } DEFINE_RUN_ONCE_STATIC_ALT(ossl_init_no_add_all_ciphers, - ossl_init_add_all_ciphers) + ossl_init_add_all_ciphers) { /* Do nothing */ return 1; @@ -237,7 +237,7 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_add_all_digests) } DEFINE_RUN_ONCE_STATIC_ALT(ossl_init_no_add_all_digests, - ossl_init_add_all_digests) + ossl_init_add_all_digests) { /* Do nothing */ return 1; @@ -287,7 +287,7 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_openssl) engine_load_openssl_int(); return 1; } -# ifndef OPENSSL_NO_RDRAND +#ifndef OPENSSL_NO_RDRAND static CRYPTO_ONCE engine_rdrand = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(ossl_init_engine_rdrand) { @@ -295,7 +295,7 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_rdrand) engine_load_rdrand_int(); return 1; } -# endif +#endif static CRYPTO_ONCE engine_dynamic = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(ossl_init_engine_dynamic) { @@ -303,8 +303,8 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_dynamic) engine_load_dynamic_int(); return 1; } -# ifndef OPENSSL_NO_STATIC_ENGINE -# ifndef OPENSSL_NO_DEVCRYPTOENG +#ifndef OPENSSL_NO_STATIC_ENGINE +#ifndef OPENSSL_NO_DEVCRYPTOENG static CRYPTO_ONCE engine_devcrypto = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(ossl_init_engine_devcrypto) { @@ -312,8 +312,8 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_devcrypto) engine_load_devcrypto_int(); return 1; } -# endif -# if !defined(OPENSSL_NO_PADLOCKENG) +#endif +#if !defined(OPENSSL_NO_PADLOCKENG) static CRYPTO_ONCE engine_padlock = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(ossl_init_engine_padlock) { @@ -321,8 +321,8 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_padlock) engine_load_padlock_int(); return 1; } -# endif -# if defined(OPENSSL_SYS_WIN32) && !defined(OPENSSL_NO_CAPIENG) +#endif +#if defined(OPENSSL_SYS_WIN32) && !defined(OPENSSL_NO_CAPIENG) static CRYPTO_ONCE engine_capi = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(ossl_init_engine_capi) { @@ -330,8 +330,8 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_capi) engine_load_capi_int(); return 1; } -# endif -# if !defined(OPENSSL_NO_AFALGENG) +#endif +#if !defined(OPENSSL_NO_AFALGENG) static CRYPTO_ONCE engine_afalg = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(ossl_init_engine_afalg) { @@ -339,8 +339,8 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_engine_afalg) engine_load_afalg_int(); return 1; } -# endif -# endif +#endif +#endif #endif void OPENSSL_cleanup(void) @@ -466,7 +466,7 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) uint64_t tmp; int aloaddone = 0; - /* Applications depend on 0 being returned when cleanup was already done */ + /* Applications depend on 0 being returned when cleanup was already done */ if (stopped) { if (!(opts & OPENSSL_INIT_BASE_ONLY)) ERR_raise(ERR_LIB_CRYPTO, ERR_R_INIT_FAIL); @@ -532,7 +532,7 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) */ if ((opts & OPENSSL_INIT_NO_ATEXIT) != 0) { if (!RUN_ONCE_ALT(®ister_atexit, ossl_init_no_register_atexit, - ossl_init_register_atexit)) + ossl_init_register_atexit)) return 0; } else if (!RUN_ONCE(®ister_atexit, ossl_init_register_atexit)) { return 0; @@ -542,39 +542,39 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) return 0; if ((opts & OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS) - && !RUN_ONCE_ALT(&load_crypto_strings, - ossl_init_no_load_crypto_strings, - ossl_init_load_crypto_strings)) + && !RUN_ONCE_ALT(&load_crypto_strings, + ossl_init_no_load_crypto_strings, + ossl_init_load_crypto_strings)) return 0; if ((opts & OPENSSL_INIT_LOAD_CRYPTO_STRINGS) - && !RUN_ONCE(&load_crypto_strings, ossl_init_load_crypto_strings)) + && !RUN_ONCE(&load_crypto_strings, ossl_init_load_crypto_strings)) return 0; if ((opts & OPENSSL_INIT_NO_ADD_ALL_CIPHERS) - && !RUN_ONCE_ALT(&add_all_ciphers, ossl_init_no_add_all_ciphers, - ossl_init_add_all_ciphers)) + && !RUN_ONCE_ALT(&add_all_ciphers, ossl_init_no_add_all_ciphers, + ossl_init_add_all_ciphers)) return 0; if ((opts & OPENSSL_INIT_ADD_ALL_CIPHERS) - && !RUN_ONCE(&add_all_ciphers, ossl_init_add_all_ciphers)) + && !RUN_ONCE(&add_all_ciphers, ossl_init_add_all_ciphers)) return 0; if ((opts & OPENSSL_INIT_NO_ADD_ALL_DIGESTS) - && !RUN_ONCE_ALT(&add_all_digests, ossl_init_no_add_all_digests, - ossl_init_add_all_digests)) + && !RUN_ONCE_ALT(&add_all_digests, ossl_init_no_add_all_digests, + ossl_init_add_all_digests)) return 0; if ((opts & OPENSSL_INIT_ADD_ALL_DIGESTS) - && !RUN_ONCE(&add_all_digests, ossl_init_add_all_digests)) + && !RUN_ONCE(&add_all_digests, ossl_init_add_all_digests)) return 0; if ((opts & OPENSSL_INIT_ATFORK) - && !openssl_init_fork_handlers()) + && !openssl_init_fork_handlers()) return 0; if ((opts & OPENSSL_INIT_NO_LOAD_CONFIG) - && !RUN_ONCE_ALT(&config, ossl_init_no_config, ossl_init_config)) + && !RUN_ONCE_ALT(&config, ossl_init_no_config, ossl_init_config)) return 0; if (opts & OPENSSL_INIT_LOAD_CONFIG) { @@ -593,7 +593,7 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) return 0; conf_settings = settings; ret = RUN_ONCE_ALT(&config, ossl_init_config_settings, - ossl_init_config); + ossl_init_config); conf_settings = NULL; CRYPTO_THREAD_unlock(init_lock); } @@ -604,46 +604,44 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) } if ((opts & OPENSSL_INIT_ASYNC) - && !RUN_ONCE(&async, ossl_init_async)) + && !RUN_ONCE(&async, ossl_init_async)) return 0; #ifndef OPENSSL_NO_ENGINE if ((opts & OPENSSL_INIT_ENGINE_OPENSSL) - && !RUN_ONCE(&engine_openssl, ossl_init_engine_openssl)) + && !RUN_ONCE(&engine_openssl, ossl_init_engine_openssl)) return 0; -# ifndef OPENSSL_NO_RDRAND +#ifndef OPENSSL_NO_RDRAND if ((opts & OPENSSL_INIT_ENGINE_RDRAND) - && !RUN_ONCE(&engine_rdrand, ossl_init_engine_rdrand)) + && !RUN_ONCE(&engine_rdrand, ossl_init_engine_rdrand)) return 0; -# endif +#endif if ((opts & OPENSSL_INIT_ENGINE_DYNAMIC) - && !RUN_ONCE(&engine_dynamic, ossl_init_engine_dynamic)) + && !RUN_ONCE(&engine_dynamic, ossl_init_engine_dynamic)) return 0; -# ifndef OPENSSL_NO_STATIC_ENGINE -# ifndef OPENSSL_NO_DEVCRYPTOENG +#ifndef OPENSSL_NO_STATIC_ENGINE +#ifndef OPENSSL_NO_DEVCRYPTOENG if ((opts & OPENSSL_INIT_ENGINE_CRYPTODEV) - && !RUN_ONCE(&engine_devcrypto, ossl_init_engine_devcrypto)) + && !RUN_ONCE(&engine_devcrypto, ossl_init_engine_devcrypto)) return 0; -# endif -# if !defined(OPENSSL_NO_PADLOCKENG) +#endif +#if !defined(OPENSSL_NO_PADLOCKENG) if ((opts & OPENSSL_INIT_ENGINE_PADLOCK) - && !RUN_ONCE(&engine_padlock, ossl_init_engine_padlock)) + && !RUN_ONCE(&engine_padlock, ossl_init_engine_padlock)) return 0; -# endif -# if defined(OPENSSL_SYS_WIN32) && !defined(OPENSSL_NO_CAPIENG) +#endif +#if defined(OPENSSL_SYS_WIN32) && !defined(OPENSSL_NO_CAPIENG) if ((opts & OPENSSL_INIT_ENGINE_CAPI) - && !RUN_ONCE(&engine_capi, ossl_init_engine_capi)) + && !RUN_ONCE(&engine_capi, ossl_init_engine_capi)) return 0; -# endif -# if !defined(OPENSSL_NO_AFALGENG) +#endif +#if !defined(OPENSSL_NO_AFALGENG) if ((opts & OPENSSL_INIT_ENGINE_AFALG) - && !RUN_ONCE(&engine_afalg, ossl_init_engine_afalg)) + && !RUN_ONCE(&engine_afalg, ossl_init_engine_afalg)) return 0; -# endif -# endif - if (opts & (OPENSSL_INIT_ENGINE_ALL_BUILTIN - | OPENSSL_INIT_ENGINE_OPENSSL - | OPENSSL_INIT_ENGINE_AFALG)) { +#endif +#endif + if (opts & (OPENSSL_INIT_ENGINE_ALL_BUILTIN | OPENSSL_INIT_ENGINE_OPENSSL | OPENSSL_INIT_ENGINE_AFALG)) { ENGINE_register_all_complete(); } #endif @@ -658,10 +656,10 @@ int OPENSSL_atexit(void (*handler)(void)) { OPENSSL_INIT_STOP *newhand; -#if !defined(OPENSSL_USE_NODELETE)\ +#if !defined(OPENSSL_USE_NODELETE) \ && !defined(OPENSSL_NO_PINSHARED) { -# if defined(DSO_WIN32) && !defined(_WIN32_WCE) +#if defined(DSO_WIN32) && !defined(_WIN32_WCE) HMODULE handle = NULL; BOOL ret; union { @@ -676,12 +674,12 @@ int OPENSSL_atexit(void (*handler)(void)) * way */ ret = GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS - | GET_MODULE_HANDLE_EX_FLAG_PIN, - handlersym.sym, &handle); + | GET_MODULE_HANDLE_EX_FLAG_PIN, + handlersym.sym, &handle); if (!ret) return 0; -# elif !defined(DSO_NONE) +#elif !defined(DSO_NONE) /* * Deliberately leak a reference to the handler. This will force the * library/code containing the handler to remain loaded until we run the @@ -700,11 +698,11 @@ int OPENSSL_atexit(void (*handler)(void)) dso = DSO_dsobyaddr(handlersym.sym, DSO_FLAG_NO_UNLOAD_ON_FREE); /* See same code above in ossl_init_base() for an explanation. */ OSSL_TRACE1(INIT, - "atexit: obtained DSO reference? %s\n", - (dso == NULL ? "No!" : "Yes.")); + "atexit: obtained DSO reference? %s\n", + (dso == NULL ? "No!" : "Yes.")); DSO_free(dso); ERR_pop_to_mark(); -# endif +#endif } #endif @@ -719,4 +717,3 @@ int OPENSSL_atexit(void (*handler)(void)) return 1; } - |
