Commit 8b2632d90f for openssl.org
commit 8b2632d90fac3b0e0a9e6f0ade41ca03c43edeed
Author: Neil Horman <nhorman@openssl.org>
Date: Wed Sep 2 15:53:13 2026 -0400
Revert "Free connections before listeners in the radix test cleanup"
This reverts commit 31c32ca387a01b1134b459941d5111ab977b8197.
Reviewed-by: Jakub Zelenka <jakub.zelenka@openssl.foundation>
Reviewed-by: Andrew Dinh <andrewd@openssl.org>
MergeDate: Fri Sep 11 20:50:56 2026
(Merged from https://github.com/openssl/openssl/pull/32498)
diff --git a/test/radix/quic_bindings.c b/test/radix/quic_bindings.c
index 5b4fbdec9f..21fd5ef0e6 100644
--- a/test/radix/quic_bindings.c
+++ b/test/radix/quic_bindings.c
@@ -439,22 +439,6 @@ static int RADIX_PROCESS_join_all_threads(RADIX_PROCESS *rp, int *testresult)
return ok;
}
-/*
- * Free every non-listener object's SSL before cleanup_one() frees any listener.
- *
- * A connection's assist thread reads from its network BIO, and for a dgram BIO
- * pair (see hf_link_dgram_pair) that BIO belongs to the linked listener. Freeing
- * the connection joins its assist thread (see ossl_quic_free), so doing so first
- * ensures no assist thread is still reading when the listener BIOs are freed.
- */
-static void cleanup_nonlistener(RADIX_OBJ *obj)
-{
- if (obj->ssl != NULL && !SSL_is_listener(obj->ssl)) {
- SSL_free(obj->ssl);
- obj->ssl = NULL;
- }
-}
-
static void cleanup_one(RADIX_OBJ *obj)
{
obj->registered = 0;
@@ -475,7 +459,6 @@ static void RADIX_PROCESS_cleanup(RADIX_PROCESS *rp)
sk_RADIX_THREAD_free(rp->threads);
rp->threads = NULL;
- lh_RADIX_OBJ_doall(rp->objs, cleanup_nonlistener);
lh_RADIX_OBJ_doall(rp->objs, cleanup_one);
lh_RADIX_OBJ_free(rp->objs);
rp->objs = NULL;