From 9387bd4c25cf37613bcecc173e63f93327eb47ec Mon Sep 17 00:00:00 2001 From: Hugo Landau Date: Fri, 2 Feb 2024 12:30:41 +0000 Subject: QUIC POLLING: Implement autotick Reviewed-by: Neil Horman Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/23495) --- ssl/quic/quic_impl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'ssl/quic') diff --git a/ssl/quic/quic_impl.c b/ssl/quic/quic_impl.c index 42e7b085e7..d0dc04bb37 100644 --- a/ssl/quic/quic_impl.c +++ b/ssl/quic/quic_impl.c @@ -3921,7 +3921,8 @@ static int test_poll_event_os(QUIC_CONNECTION *qc, int is_uni) } QUIC_TAKES_LOCK -int ossl_quic_conn_poll_events(SSL *ssl, uint64_t events, uint64_t *p_revents) +int ossl_quic_conn_poll_events(SSL *ssl, uint64_t events, int do_tick, + uint64_t *p_revents) { QCTX ctx; uint64_t revents = 0; @@ -3931,6 +3932,9 @@ int ossl_quic_conn_poll_events(SSL *ssl, uint64_t events, uint64_t *p_revents) quic_lock(ctx.qc); + if (do_tick) + ossl_quic_reactor_tick(ossl_quic_channel_get_reactor(ctx.qc->ch), 0); + if (ctx.xso != NULL) { /* SSL object has a stream component. */ -- cgit v1.2.3