Struct s2n_quic_core::packet::retry::Retry
source · pub struct Retry<'a> {
pub tag: u8,
pub version: u32,
pub destination_connection_id: &'a [u8],
pub source_connection_id: &'a [u8],
pub retry_token: &'a [u8],
pub retry_integrity_tag: &'a IntegrityTag,
}
Fields§
§tag: u8
§version: u32
§destination_connection_id: &'a [u8]
§source_connection_id: &'a [u8]
§retry_token: &'a [u8]
§retry_integrity_tag: &'a IntegrityTag
Implementations§
source§impl<'a> Retry<'a>
impl<'a> Retry<'a>
pub fn encode_packet<T: Format, C: RetryKey>( remote_address: &SocketAddress, packet: &ProtectedInitial<'_>, local_connection_id: &LocalId, random: &mut dyn Generator, token_format: &mut T, packet_buf: &mut [u8] ) -> Option<Range<usize>>
pub fn validate<Crypto, CreateBuf, Buf>( &self, odcid: &InitialId, create_buf: CreateBuf ) -> Result<(), Error>
pub fn from_initial( initial_packet: &'a ProtectedInitial<'_>, local_connection_id: &'a [u8] ) -> Self
pub fn destination_connection_id(&self) -> &[u8] ⓘ
pub fn source_connection_id(&self) -> &[u8] ⓘ
pub fn retry_token(&self) -> &[u8] ⓘ
Trait Implementations§
source§impl<'a> EncoderValue for Retry<'a>
impl<'a> EncoderValue for Retry<'a>
source§fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
fn encode_mut<E>(&mut self, encoder: &mut E)where
E: Encoder,
Encodes the value into the encoder, while potentially mutating the value itself
source§fn encoding_size(&self) -> usize
fn encoding_size(&self) -> usize
Returns the encoding size with no buffer constrains
source§fn encoding_size_for_encoder<E>(&self, encoder: &E) -> usizewhere
E: Encoder,
fn encoding_size_for_encoder<E>(&self, encoder: &E) -> usizewhere
E: Encoder,
Returns the encoding size for the given encoder’s capacity
source§fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
fn encode_with_len_prefix<Len, E>(&self, encoder: &mut E)
Encodes the value into the encoder with a prefix of
Len
fn encode_to_vec(&self) -> Vec<u8>
Auto Trait Implementations§
impl<'a> Freeze for Retry<'a>
impl<'a> RefUnwindSafe for Retry<'a>
impl<'a> Send for Retry<'a>
impl<'a> Sync for Retry<'a>
impl<'a> Unpin for Retry<'a>
impl<'a> UnwindSafe for Retry<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> PacketPayloadEncoder for Twhere
T: EncoderValue,
impl<T> PacketPayloadEncoder for Twhere
T: EncoderValue,
source§fn encoding_size_hint<E>(&mut self, encoder: &E, minimum_len: usize) -> usizewhere
E: Encoder,
fn encoding_size_hint<E>(&mut self, encoder: &E, minimum_len: usize) -> usizewhere
E: Encoder,
Returns an estimate of the encoding size of the payload. This
may be inaccurate from what actually is encoded. Estimates should
be less than or equal to what is actually written.
Implementations can return 0 to skip encoding.