From: Richard Levitte Date: Wed, 6 Feb 2019 19:51:47 +0000 (+0100) Subject: test/drbgtest.c: call OPENSSL_thread_stop() explicitly X-Git-Tag: openssl-3.0.0-alpha1~2566 X-Git-Url: https://git.openssl.org/?p=openssl.git;a=commitdiff_plain;h=03cdfe1efaf2a3b5192b8cb3ef331939af7bfeb8 test/drbgtest.c: call OPENSSL_thread_stop() explicitly The manual says this in its notes: ... and therefore applications using static linking should also call OPENSSL_thread_stop() on each thread. ... Fixes #8171 Reviewed-by: Matthias St. Pierre (Merged from https://github.com/openssl/openssl/pull/8173) --- diff --git a/test/drbgtest.c b/test/drbgtest.c index 4546f63376..c788f19fc5 100644 --- a/test/drbgtest.c +++ b/test/drbgtest.c @@ -839,6 +839,11 @@ typedef HANDLE thread_t; static DWORD WINAPI thread_run(LPVOID arg) { run_multi_thread_test(); + /* + * Because we're linking with a static library, we must stop each + * thread explicitly, or so says OPENSSL_thread_stop(3) + */ + OPENSSL_thread_stop(); return 0; } @@ -860,6 +865,11 @@ typedef pthread_t thread_t; static void *thread_run(void *arg) { run_multi_thread_test(); + /* + * Because we're linking with a static library, we must stop each + * thread explicitly, or so says OPENSSL_thread_stop(3) + */ + OPENSSL_thread_stop(); return NULL; }