]> git.ipfire.org Git - thirdparty/openssl.git/commit
quic-radix: add thread-assisted idle keepalive test master
authorJakub Zelenka <jakub.zelenka@openssl.foundation>
Fri, 10 Jul 2026 18:53:16 +0000 (20:53 +0200)
committerAndrew Dinh <andrewd@openssl.org>
Mon, 3 Aug 2026 02:12:27 +0000 (09:12 +0700)
commit2d2363ee97be027fec500eb9652de67bd3be8c81
tree313fdd448cd9fbf66c93b114fc6af1971d63bbb3
parent77f492f29f882e07d57e16920138d991dc9af018
quic-radix: add thread-assisted idle keepalive test

Add a radix vignette covering thread-assisted mode: with the client's
per-op ticking disabled, only its assist thread can act on the
connection, so skipping the virtual time past the idle timeout keeps the
server up only if the assist thread keeps sending keepalives. This
migrates the thread-assisted idle coverage away from the
QUIC_TSERVER-based test.

The client is created with OSSL_QUIC_client_thread_method() so the
method itself stays covered as well. The client and listener are linked
with an in-memory datagram BIO pair instead of real UDP sockets, so
keepalive delivery cannot race the virtual clock in the OS UDP path.

New ops: hf_set_tick_active (enable/disable per-op ticking),
hf_skip_time_wait (skip virtual time, wake the assist thread and wait
for it to catch up), hf_expect_connected, and hf_link_dgram_pair.

Assisted-by: Claude:claude-opus-4-8
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Andrew Dinh <andrewd@openssl.org>
MergeDate: Mon Aug  3 02:12:44 2026
(Merged from https://github.com/openssl/openssl/pull/31918)
test/radix/quic_bindings.c
test/radix/quic_ops.c
test/radix/quic_tests.c