summaryrefslogtreecommitdiffstats
path: root/ssl
diff options
context:
space:
mode:
authorHugo Landau <hlandau@openssl.org>2022-11-22 13:28:24 +0000
committerHugo Landau <hlandau@openssl.org>2023-01-19 13:17:39 +0000
commit4e392f601db9a5a131d0db8fa3fa2e3808d2770a (patch)
tree553bcfd079560ea88ce6b27e0c6c81df6fb4b567 /ssl
parentb83cf3fcf1149326f215cffd37f5c9725a4b61de (diff)
QUIC QRX: (Server support) Add support for manual URXE injection
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/19734)
Diffstat (limited to 'ssl')
-rw-r--r--ssl/quic/quic_record_rx.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/ssl/quic/quic_record_rx.c b/ssl/quic/quic_record_rx.c
index 18a2428b6b..cf9f960c3d 100644
--- a/ssl/quic/quic_record_rx.c
+++ b/ssl/quic/quic_record_rx.c
@@ -217,10 +217,8 @@ void ossl_qrx_free(OSSL_QRX *qrx)
OPENSSL_free(qrx);
}
-static void qrx_on_rx(QUIC_URXE *urxe, void *arg)
+void ossl_qrx_inject_urxe(OSSL_QRX *qrx, QUIC_URXE *urxe)
{
- OSSL_QRX *qrx = arg;
-
/* Initialize our own fields inside the URXE and add to the pending list. */
urxe->processed = 0;
urxe->hpr_removed = 0;
@@ -228,6 +226,12 @@ static void qrx_on_rx(QUIC_URXE *urxe, void *arg)
ossl_list_urxe_insert_tail(&qrx->urx_pending, urxe);
}
+static void qrx_on_rx(QUIC_URXE *urxe, void *arg)
+{
+ OSSL_QRX *qrx = arg;
+ ossl_qrx_inject_urxe(qrx, urxe);
+}
+
int ossl_qrx_add_dst_conn_id(OSSL_QRX *qrx,
const QUIC_CONN_ID *dst_conn_id)
{