pub struct HandshakePacket<'a> {Show 13 fields
pub timestamp: u32,
pub dest_socket_id: u32,
pub version: u32,
pub encryption_field: EncryptionField,
pub extension_field: HandshakeExtensionFlags,
pub initial_seq_number: u32,
pub mtu: u32,
pub max_flow_window_size: u32,
pub handshake_type: HandshakeType,
pub srt_socket_id: u32,
pub syn_cookie: u32,
pub peer_ip: [u32; 4],
pub extensions: HandshakeExtensions<'a>,
}Expand description
Handshake control packet (§3.2.1, Figure 5).
Fields§
§timestamp: u32Timestamp (§3).
dest_socket_id: u32Destination Socket ID (§3).
version: u32A base protocol version number (4 or 5; >5 reserved).
encryption_field: EncryptionFieldBlock cipher family and key size (Table 2).
extension_field: HandshakeExtensionFlagsMessage-specific extension flags/echo (Table 3, or opaque on INDUCTION).
initial_seq_number: u32The sequence number of the very first data packet to be sent.
mtu: u32Typically 1500 (Ethernet MTU) or less.
max_flow_window_size: u32Maximum number of data packets allowed in flight.
handshake_type: HandshakeTypeThe handshake packet type (Table 4).
srt_socket_id: u32The ID of the source SRT socket issuing this handshake packet.
Randomized value for processing the handshake.
peer_ip: [u32; 4]IPv4 or IPv6 address of the packet’s sender, as 4 wire words (IPv4: only the first word is non-zero).
extensions: HandshakeExtensions<'a>The trailing Handshake Extension blocks (possibly empty).
Trait Implementations§
Source§impl<'a> Clone for HandshakePacket<'a>
impl<'a> Clone for HandshakePacket<'a>
Source§fn clone(&self) -> HandshakePacket<'a>
fn clone(&self) -> HandshakePacket<'a>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for HandshakePacket<'a>
impl<'a> Debug for HandshakePacket<'a>
impl<'a> Eq for HandshakePacket<'a>
Source§impl<'a> Hash for HandshakePacket<'a>
impl<'a> Hash for HandshakePacket<'a>
Source§impl<'a> PartialEq for HandshakePacket<'a>
impl<'a> PartialEq for HandshakePacket<'a>
Source§impl<'a> Serialize for HandshakePacket<'a>
Available on crate feature serde only.
impl<'a> Serialize for HandshakePacket<'a>
Available on crate feature
serde only.impl<'a> StructuralPartialEq for HandshakePacket<'a>
Auto Trait Implementations§
impl<'a> Freeze for HandshakePacket<'a>
impl<'a> RefUnwindSafe for HandshakePacket<'a>
impl<'a> Send for HandshakePacket<'a>
impl<'a> Sync for HandshakePacket<'a>
impl<'a> Unpin for HandshakePacket<'a>
impl<'a> UnsafeUnpin for HandshakePacket<'a>
impl<'a> UnwindSafe for HandshakePacket<'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