#[repr(C)]pub enum ConnectionField {
Show 19 variants
IsServer,
InternalID,
Version,
MaxTxData,
ConnectionID(Direction, IDList),
PacketNumberSpace(KPacketNumberSpace, PacketNumberSpaceField),
TransportParameter(Host, TransportParameterField),
Token,
ConnectionError,
HandshakeWriteLevel,
IsEstablished,
IsInEarlyData,
IsBlocked,
HasFlushableStreams,
HasBlockedStreams,
MaxSendUdpPayloadLength,
MaxSendBytes,
Address(Host, IDList),
RxData,
}
Expand description
Field of a connection.
WARNING: changing API.
Variants§
IsServer
Boolean indicating if this is a server-side connection.
InternalID
An Option<u64>
being an internal identifier of this connection. Might be None
.
Version
The version used by this connection, as a u32
.
MaxTxData
Peer’s flow control limit for the connection.
ConnectionID(Direction, IDList)
Connection IDs associated to this connection. The ID corresponds to the sequence number.
PacketNumberSpace(KPacketNumberSpace, PacketNumberSpaceField)
Packet number space.
TransportParameter(Host, TransportParameterField)
Exchanged transport parameters.
Token
The token used over this connection, as an Option<Vec<u8>>
.
ConnectionError
The connection error code, if any, as an Option<u64>
.
HandshakeWriteLevel
The handshake write level, as a i32
.
TODO FIXME: this should probably move in a crypto field.
IsEstablished
Indicates if the handshake completed, as a bool
.
IsInEarlyData
Indicates if the connection is in the early data, as a bool
.
IsBlocked
Indicates if the connection is blocked by the connection-level flow limit, as a bool
.
HasFlushableStreams
Indicates if the connection has flushable streams, as a bool
.
HasBlockedStreams
Indicates if the connection has blocked streams, as a bool
.
MaxSendUdpPayloadLength
Returns the maximum length of a packet to be sent as a u64
.
MaxSendBytes
Returns the maximum number of bytes the server can send without creating amplification
attacks, as a u64
.
Address(Host, IDList)
The addresses associated to the connection, as Address
.
RxData
Total number of bytes received from the peer, as a u64
.
Trait Implementations§
Source§impl Clone for ConnectionField
impl Clone for ConnectionField
Source§fn clone(&self) -> ConnectionField
fn clone(&self) -> ConnectionField
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ConnectionField
impl Debug for ConnectionField
Source§impl<'de> Deserialize<'de> for ConnectionField
impl<'de> Deserialize<'de> for ConnectionField
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ConnectionField, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ConnectionField, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for ConnectionField
impl Serialize for ConnectionField
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Copy for ConnectionField
Auto Trait Implementations§
impl Freeze for ConnectionField
impl RefUnwindSafe for ConnectionField
impl Send for ConnectionField
impl Sync for ConnectionField
impl Unpin for ConnectionField
impl UnwindSafe for ConnectionField
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out
indicating that a T
is niched.