diff options
author | Matt Caswell <matt@openssl.org> | 2016-03-02 16:52:43 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2016-03-02 17:23:42 +0000 |
commit | ed49f43a0390217e1c2df0054fb7352523be9a58 (patch) | |
tree | 2110beb644b88a3cc3ce80c4495e59ef9189e535 /crypto/init.c | |
parent | 224905f8aaeac7fd81a49dc160a843c5fff60e6e (diff) | |
download | openssl-ed49f43a0390217e1c2df0054fb7352523be9a58.tar.gz |
Ensure Async is deinited properly
The global thread local keys were not being deinited properly in async.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'crypto/init.c')
-rw-r--r-- | crypto/init.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/crypto/init.c b/crypto/init.c index cbe07df2a2..613606ebdc 100644 --- a/crypto/init.c +++ b/crypto/init.c @@ -580,6 +580,16 @@ void OPENSSL_cleanup(void) COMP_zlib_cleanup(); } +#ifndef OPENSSL_NO_ASYNC + if (async_inited) { +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " + "async_deinit()\n"); +# endif + async_deinit(); + } +#endif + #ifndef OPENSSL_NO_ENGINE if (engine_inited) { # ifdef OPENSSL_INIT_DEBUG |