diff options
| author | Nikola Pajkovsky <[email protected]> | 2026-07-15 11:05:35 +0200 |
|---|---|---|
| committer | Norbert Pocs <[email protected]> | 2026-07-20 11:06:53 +0200 |
| commit | 29616c15e476eab4a81a6af20259d7d1809d4e03 (patch) | |
| tree | 70bb05401f9f2b51f3b3df55f7477ec463af5a6e | |
| parent | test/p_ossltest: fix uninitialised bytes written in TLS1-AAD GCM mode (diff) | |
| download | openssl-29616c15e476eab4a81a6af20259d7d1809d4e03.tar.gz openssl-29616c15e476eab4a81a6af20259d7d1809d4e03.zip | |
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 <[email protected]>
Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Mon Jul 20 09:07:10 2026
(Merged from https://github.com/openssl/openssl/pull/31961)
| -rw-r--r-- | test/radix/quic_bindings.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/test/radix/quic_bindings.c b/test/radix/quic_bindings.c index 02356f48eba..7dc46f7950d 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 |
