pub struct OpenvpnHeader {
pub opcode: OpenvpnOpcode,
pub key_id: u8,
pub session_id: u64,
pub hmac_hash: [u8; 20],
pub packet_id: u32,
pub timestamp: u32,
}Expand description
Parsed OpenVPN packet header
Fields§
§opcode: OpenvpnOpcodeOpcode (5 bits)
key_id: u8Key ID (3 bits) – identifies the TLS session / key
session_id: u64Session ID (8 bytes)
hmac_hash: [u8; 20]HMAC hash for tls-auth (20 bytes, SHA-1)
packet_id: u32Packet ID for replay protection
timestamp: u32Timestamp (seconds since epoch)
Implementations§
Trait Implementations§
Source§impl Clone for OpenvpnHeader
impl Clone for OpenvpnHeader
Source§fn clone(&self) -> OpenvpnHeader
fn clone(&self) -> OpenvpnHeader
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OpenvpnHeader
impl Debug for OpenvpnHeader
Source§impl PartialEq for OpenvpnHeader
impl PartialEq for OpenvpnHeader
impl Eq for OpenvpnHeader
impl StructuralPartialEq for OpenvpnHeader
Auto Trait Implementations§
impl Freeze for OpenvpnHeader
impl RefUnwindSafe for OpenvpnHeader
impl Send for OpenvpnHeader
impl Sync for OpenvpnHeader
impl Unpin for OpenvpnHeader
impl UnwindSafe for OpenvpnHeader
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)