aboutsummaryrefslogtreecommitdiff
path: root/crypto/async
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2019-06-18 18:37:38 +0100
committerMatt Caswell <matt@openssl.org>2019-06-19 11:54:34 +0100
commit6913f5fe05a38fa72213b5b5d1f41ef10ca908bd (patch)
tree386fad30f5f06eaed4cdadcd8a24a36b4e09aff1 /crypto/async
parentd73458d17ac7e44270a2bcbace45ab99334754b4 (diff)
downloadopenssl-6913f5fe05a38fa72213b5b5d1f41ef10ca908bd.zip
openssl-6913f5fe05a38fa72213b5b5d1f41ef10ca908bd.tar.gz
openssl-6913f5fe05a38fa72213b5b5d1f41ef10ca908bd.tar.bz2
Provide an ability to deregister thread stop handlers
If a provider gets unloaded then any thread stop handlers that it had registered will be left hanging. We should clean them up before tearing down the provider. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9186)
Diffstat (limited to 'crypto/async')
-rw-r--r--crypto/async/async.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/crypto/async/async.c b/crypto/async/async.c
index bcb0030..43b16a7 100644
--- a/crypto/async/async.c
+++ b/crypto/async/async.c
@@ -36,7 +36,7 @@ static async_ctx *async_ctx_new(void)
{
async_ctx *nctx;
- if (!ossl_init_thread_start(NULL, async_delete_thread_state))
+ if (!ossl_init_thread_start(NULL, NULL, async_delete_thread_state))
return NULL;
nctx = OPENSSL_malloc(sizeof(*nctx));
@@ -328,7 +328,7 @@ int ASYNC_init_thread(size_t max_size, size_t init_size)
if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL))
return 0;
- if (!ossl_init_thread_start(NULL, async_delete_thread_state))
+ if (!ossl_init_thread_start(NULL, NULL, async_delete_thread_state))
return 0;
pool = OPENSSL_zalloc(sizeof(*pool));