From f9623ca21f354cb3ed2a03e2ed7ac9ad2a953ba6 Mon Sep 17 00:00:00 2001 From: Nathan Skrzypczak Date: Thu, 21 Nov 2019 16:45:30 +0100 Subject: quic: Refactor quic rx callback for offload Type: refactor Change-Id: I1d90c8807e7eea4a77403bafc0628ec0d393c572 Signed-off-by: Nathan Skrzypczak --- src/plugins/quic/quic.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/plugins/quic/quic.h') diff --git a/src/plugins/quic/quic.h b/src/plugins/quic/quic.h index 35b51a502bc..29d5224cdec 100644 --- a/src/plugins/quic/quic.h +++ b/src/plugins/quic/quic.h @@ -41,6 +41,9 @@ #define QUIC_DEFAULT_FIFO_SIZE (64 << 10) #define QUIC_SEND_PACKET_VEC_SIZE 16 +#define QUIC_SEND_MAX_BATCH_PACKETS 16 +#define QUIC_RCV_MAX_BATCH_PACKETS 16 + /* Taken from quicly.c */ #define QUICLY_QUIC_BIT 0x40 @@ -91,6 +94,15 @@ typedef enum quic_ctx_conn_state_ QUIC_CONN_STATE_ACTIVE_CLOSING, } quic_ctx_conn_state_t; +typedef enum quic_packet_type_ +{ + QUIC_PACKET_TYPE_NONE, + QUIC_PACKET_TYPE_RECEIVE, + QUIC_PACKET_TYPE_MIGRATE, + QUIC_PACKET_TYPE_ACCEPT, + QUIC_PACKET_TYPE_RESET, + QUIC_PACKET_TYPE_DROP, +} quic_packet_type_t; typedef enum quic_ctx_flags_ { @@ -169,6 +181,14 @@ typedef struct quic_rx_packet_ctx_ u8 data[QUIC_MAX_PACKET_SIZE]; u32 ctx_index; u32 thread_index; + union + { + struct sockaddr sa; + struct sockaddr_in6 sa6; + }; + socklen_t salen; + u8 ptype; + session_dgram_hdr_t ph; } quic_rx_packet_ctx_t; typedef struct quicly_ctx_data_ -- cgit 1.2.3-korg