Commit 29616c15e4 for openssl.org
commit 29616c15e476eab4a81a6af20259d7d1809d4e03
Author: Nikola Pajkovsky <nikolap@openssl.org>
Date: Wed Jul 15 11:05:35 2026 +0200
test: clean up thread-local key in QUIC radix tests
The QUIC radix test creates a new thread-local key for each script but
only clears the associated value during teardown. The key itself
is never deleted.
Delete the thread-local key after all child threads have joined and the
main-thread value has been cleared.
1,536 bytes in 3 blocks are still reachable in loss record 873 of 915
at 0x488D0B0: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-arm64-linux.so)
by 0x49561CF: pthread_setspecific@@GLIBC_2.34 (in /usr/lib64/libc.so.6)
by 0x5C0FD7: CRYPTO_THREAD_set_local (threads_pthread.c:1030)
by 0x41132F: radix_thread_init (quic_bindings.c:570)
by 0x4114F7: bindings_process_init (quic_bindings.c:604)
by 0x422563: test_script (main.c:28)
by 0x5152DF: run_tests (driver.c:518)
by 0x517447: main (main.c:52)
Signed-off-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
MergeDate: Mon Jul 20 09:07:10 2026
(Merged from https://github.com/openssl/openssl/pull/31961)
diff --git a/test/radix/quic_bindings.c b/test/radix/quic_bindings.c
index 02356f48eb..7dc46f7950 100644
--- a/test/radix/quic_bindings.c
+++ b/test/radix/quic_bindings.c
@@ -662,6 +662,9 @@ static int bindings_process_finish(int testresult_main)
radix_thread_cleanup(); /* cleanup main thread */
RADIX_PROCESS_cleanup(&radix_process);
+ if (!TEST_true(CRYPTO_THREAD_cleanup_local(&radix_thread)))
+ testresult = 0;
+
if (testresult)
BIO_printf(bio_err, "==> OK\n\n");
else