Ensure Async is deinited properly
The global thread local keys were not being deinited properly in async.
Reviewed-by: Rich Salz <rsalz@openssl.org>
diff --git a/crypto/init.c b/crypto/init.c
index cbe07df..613606e 100644
--- a/crypto/init.c
+++ b/crypto/init.c
@@ -580,6 +580,16 @@
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