| 53 | namespace caf::net::ssl { |
| 54 | |
| 55 | void startup() { |
| 56 | #if OPENSSL_VERSION_NUMBER < 0x10100000L |
| 57 | SSL_library_init(); |
| 58 | SSL_load_error_strings(); |
| 59 | OpenSSL_add_all_algorithms(); |
| 60 | mutexes = std::vector<std::mutex>{static_cast<size_t>(CRYPTO_num_locks())}; |
| 61 | CRYPTO_set_locking_callback(locking_function); |
| 62 | CRYPTO_set_dynlock_create_callback(dynlock_create); |
| 63 | CRYPTO_set_dynlock_lock_callback(dynlock_lock); |
| 64 | CRYPTO_set_dynlock_destroy_callback(dynlock_destroy); |
| 65 | #else |
| 66 | OPENSSL_init_ssl(0, nullptr); |
| 67 | #endif |
| 68 | } |
| 69 | |
| 70 | void cleanup() { |
| 71 | #if OPENSSL_VERSION_NUMBER < 0x10100000L |