Struct rustls::quic::HeaderProtectionKey
source · pub struct HeaderProtectionKey(_);
quic
only.Expand description
A QUIC header protection key
Implementations§
source§impl HeaderProtectionKey
impl HeaderProtectionKey
sourcepub fn encrypt_in_place(
&self,
sample: &[u8],
first: &mut u8,
packet_number: &mut [u8]
) -> Result<(), Error>
pub fn encrypt_in_place(
&self,
sample: &[u8],
first: &mut u8,
packet_number: &mut [u8]
) -> Result<(), Error>
Adds QUIC Header Protection.
sample
must contain the sample of encrypted payload; see
Header Protection Sample.
first
must reference the first byte of the header, referred to as
packet[0]
in Header Protection Application.
packet_number
must reference the Packet Number field; this is
packet[pn_offset:pn_offset+pn_length]
in Header Protection Application.
Returns an error without modifying anything if sample
is not
the correct length (see Header Protection Sample and Self::sample_len()
),
or packet_number
is longer than allowed (see Packet Number Encoding and Decoding).
Otherwise, first
and packet_number
will have the header protection added.
sourcepub fn decrypt_in_place(
&self,
sample: &[u8],
first: &mut u8,
packet_number: &mut [u8]
) -> Result<(), Error>
pub fn decrypt_in_place(
&self,
sample: &[u8],
first: &mut u8,
packet_number: &mut [u8]
) -> Result<(), Error>
Removes QUIC Header Protection.
sample
must contain the sample of encrypted payload; see
Header Protection Sample.
first
must reference the first byte of the header, referred to as
packet[0]
in Header Protection Application.
packet_number
must reference the Packet Number field; this is
packet[pn_offset:pn_offset+pn_length]
in Header Protection Application.
Returns an error without modifying anything if sample
is not
the correct length (see Header Protection Sample and Self::sample_len()
),
or packet_number
is longer than allowed (see
Packet Number Encoding and Decoding).
Otherwise, first
and packet_number
will have the header protection removed.
sourcepub fn sample_len(&self) -> usize
pub fn sample_len(&self) -> usize
Expected sample length for the key’s algorithm