Module: kamailio Branch: master Commit: 8dffc45ee91aeed839efb38d17040359dcac953a URL: https://github.com/kamailio/kamailio/commit/8dffc45ee91aeed839efb38d17040359...
Author: S-P Chan shihping.chan@gmail.com Committer: S-P Chan shihping.chan@gmail.com Date: 2024-01-14T14:08:03+08:00
tls: remove thread-enablement on EVP_RAND_CTX
- with late initialisation it is not necessary to enable thread locking on EVP_RAND_CTX - the function remains but is not used in case requirements change with OpenSSL >= 3.2
---
Modified: src/modules/tls/tls_init.c
---
Diff: https://github.com/kamailio/kamailio/commit/8dffc45ee91aeed839efb38d17040359... Patch: https://github.com/kamailio/kamailio/commit/8dffc45ee91aeed839efb38d17040359...
---
diff --git a/src/modules/tls/tls_init.c b/src/modules/tls/tls_init.c index d077b41e08a..bb1d0f19207 100644 --- a/src/modules/tls/tls_init.c +++ b/src/modules/tls/tls_init.c @@ -733,6 +733,12 @@ int tls_pre_init(void) * - executed before any mod_init() */ #if OPENSSL_VERSION_NUMBER >= 0x030000000L +/* + * With late initialisation it is not necessary to + * enable threading on the EVP_RAND_CTX. This function + * left here in case more complex requirements arise in + * OpenSSL >= 3.2. + */ long tls_h_mod_randctx(void *) { do { OSSL_LIB_CTX *osslglobal = NULL; @@ -770,7 +776,7 @@ long tls_h_mod_randctx(void *) {
return 0L; } -#endif +#endif /* OPENSSL_VERSION_NUMBER */
int tls_h_mod_pre_init_f(void) { @@ -796,14 +802,21 @@ int tls_h_mod_pre_init_f(void) SSL_load_error_strings(); #endif
+#if 0 #if OPENSSL_VERSION_NUMBER >= 0x030000000L + /* + * With deferred initialisation it is not necessary to enable threading + * on the EVP_RAND_CTX. We leave this block here as an example of how + * to do it in case of future requirements. + */ pthread_t tid; long rl; pthread_create(&tid, NULL, (void *(*)(void *))tls_h_mod_randctx, NULL); pthread_join(tid, (void **)&rl); if ((int)rl) return (int)rl; -#endif +#endif /* OPENSSL_VERSION_NUMBER */ +#endif /* 0 */
tls_mod_preinitialized = 1; return 0;