Lines Matching +full:dlclose +full:- +full:skip
2 * Copyright 2016-2022 The OpenSSL Project Authors. All Rights Reserved.
49 /* Guards simultaneous INIT_LOAD_CONFIG calls with non-NULL settings */
164 * In case of No!, it is uncertain our exit()-handlers can still be in DEFINE_RUN_ONCE_STATIC()
165 * called. After dlclose() the whole library might have been unloaded in DEFINE_RUN_ONCE_STATIC()
370 currhandler->handler(); in OPENSSL_cleanup()
372 currhandler = currhandler->next; in OPENSSL_cleanup()
385 * We assume we are single-threaded for this function, i.e. no race in OPENSSL_cleanup()
401 * - ossl_rand_cleanup_int could call an ENGINE's RAND cleanup function so in OPENSSL_cleanup()
403 * - ENGINEs use CRYPTO_EX_DATA and therefore, must be cleaned up in OPENSSL_cleanup()
405 * - ossl_config_modules_free() can end up in ENGINE code so must be called in OPENSSL_cleanup()
407 * - ENGINEs and additional EVP algorithms might use added OIDs names so in OPENSSL_cleanup()
460 * i.e. passing a non-null settings value is assumed to be single-threaded.
478 * optimisation to skip the full checks in this function if we don't need in OPENSSL_init_crypto()
483 * This doesn't matter - it just means we will run the full function in OPENSSL_init_crypto()
484 * unnecessarily - but all the critical code is contained in RUN_ONCE in OPENSSL_init_crypto()
501 * re-enters OPENSSL_init_crypto() with OPENSSL_INIT_BASE_ONLY, but with in OPENSSL_init_crypto()
527 * should not have the side-effect of setting up exit handlers, and in OPENSSL_init_crypto()
528 * therefore, this code block is below the INIT_BASE_ONLY-conditioned early in OPENSSL_init_crypto()
581 /* If called recursively from OBJ_ calls, just skip it. */ in OPENSSL_init_crypto()
585 if (!CRYPTO_THREAD_set_local(&in_init_config_local, (void *)-1)) in OPENSSL_init_crypto()
686 * atexit handler. If -znodelete has been used then this is in OPENSSL_atexit()
714 newhand->handler = handler; in OPENSSL_atexit()
715 newhand->next = stop_handlers; in OPENSSL_atexit()