Module squic

Module squic 

Source
Expand description

This module is shared by sunnyquic and shadowquic It handles the general tcp/udp proxying logic over quic connection It contains an optional authentication feature for sunnyquic only

Modules§

inbound
outbound

Structs§

SQConn
SQuic connection, it is shared by shadowquic and sunnyquic and is a wrapper of quic connection. It contains a connection object and two ID store for managing UDP sockets. The IDStore stores the mapping between ids and the destionation addresses as well as associated sockets

Functions§

handle_udp_packet_recv
Handle udp packet receive task It watches udp packets from quic connection and sends them to the udp socket. The udp socket could be downstream(inbound) or upstream(outbound) This function is symetrical for both clients and servers.
handle_udp_recv_ctrl
Handle udp ctrl stream receive task it retrieves the dst id pair from the bistream and records related socket and address This function is symetrical for both clients and servers.
handle_udp_send
Handle udp packets send It watches the udp socket and sends the packets to the quic connection. This function is symetrical for both clients and servers.