Skip to main content

Module proxy

Module proxy 

Available on crate features quic and std only.
Expand description

QUIC interception: inspect an association’s Initial flight, then forward it untouched or terminate it and relay the established connections.

Structs§

AdmissionStats
What a QuicAssociationAdmission refused, and how inspection of admitted associations ended when it was refused too, since it was created.
AssociationKey
The addresses an association is fixed to. Its egress target is not part of it: other targets do not make the same incoming datagrams distinguishable.
AssociationLimits
Bounds applied before any datagram of an association is inspected. A source is an IPv4 address or an IPv6 /64.
AssociationPermit
An admitted association. Dropping it releases its slot and quarantines its addresses; its start stays counted.
InputWithQuicClientHello
The input handed on after a complete QUIC ClientHello was found in the client’s Initials.
NoQuicRejectError
The fallback’s default rejection: the association carried no complete QUIC ClientHello.
PeekQuicClientHelloService
Inspects the first datagrams of a UDP association for a QUIC client’s Initial flight and its ClientHello, then hands the association on with those datagrams replayed in front.
QuicAdmissionLayer
Admits each association before its inner service, usually a PeekQuicClientHelloService, inspects it, and holds the permit until that service is done.
QuicAdmissionService
The service a QuicAdmissionLayer produces.
QuicAssociationAdmission
Admission shared, by cloning, by every producer and listener of one policy domain.
QuicMirrorCeiling
What a mirrored client may make the relay hold on its egress connection (QuicMitmRelay::with_mirror_client): larger receive windows and stream counts are lowered to these, and the change is traced.
QuicMitmRelay
Terminates a QUIC association whose ClientHello was peeked, using the egress socket the producer prepared for its origin: the QUIC counterpart of the TLS MITM relay.
QuicMitmRelayService
The service a QuicMitmRelay layer produces.
QuicPeekFallbackPolicy
Which QuicPeekRejections reach the fallback; any other fails the association with QuicPeekRejectedError.
QuicPeekRejectedError
An association refused because its peek ended in a class the fallback policy does not admit.
QuicRelay
Relay dedicated QUIC connections through Rama’s ordinary service boundary.

Enums§

AdmissionError
Why an association was not admitted. A refusal consumes no slot and no start.
QuicPeekRejection
Why a peek found no complete QUIC ClientHello. The fallback finds it in its input’s extensions.

Constants§

DEFAULT_QUIC_MITM_HANDSHAKE_TIMEOUT
The default for QuicMitmRelay::with_handshake_timeout.
DEFAULT_QUIC_PEEK_TIMEOUT
The default for PeekQuicClientHelloService::with_peek_timeout: one handshake flight over a slow path, short enough that a silent client cannot hold an inspection open.