#[repr(C)]pub struct TcpHdr {
pub source: [u8; 2],
pub dest: [u8; 2],
pub seq: [u8; 4],
pub ack_seq: [u8; 4],
pub _bitfield_align_1: [u8; 0],
pub _bitfield_1: BitfieldU16,
pub window: [u8; 2],
pub check: [u8; 2],
pub urg_ptr: [u8; 2],
}Expand description
TCP header, which is present after the IP header.
Fields§
§source: [u8; 2]§dest: [u8; 2]§seq: [u8; 4]§ack_seq: [u8; 4]§_bitfield_align_1: [u8; 0]§_bitfield_1: BitfieldU16§window: [u8; 2]§check: [u8; 2]§urg_ptr: [u8; 2]Implementations§
Source§impl TcpHdr
impl TcpHdr
pub const LEN: usize
pub fn res1(&self) -> u16
pub fn set_res1(&mut self, val: u16)
pub fn doff(&self) -> u16
pub fn set_doff(&mut self, val: u16)
pub fn fin(&self) -> u16
pub fn set_fin(&mut self, val: u16)
pub fn syn(&self) -> u16
pub fn set_syn(&mut self, val: u16)
pub fn rst(&self) -> u16
pub fn set_rst(&mut self, val: u16)
pub fn psh(&self) -> u16
pub fn set_psh(&mut self, val: u16)
pub fn ack(&self) -> u16
pub fn set_ack(&mut self, val: u16)
pub fn urg(&self) -> u16
pub fn set_urg(&mut self, val: u16)
pub fn ece(&self) -> u16
pub fn set_ece(&mut self, val: u16)
pub fn cwr(&self) -> u16
pub fn set_cwr(&mut self, val: u16)
pub fn new_bitfield_1( res1: u16, doff: u16, fin: u16, syn: u16, rst: u16, psh: u16, ack: u16, urg: u16, ece: u16, cwr: u16, ) -> BitfieldU16
Trait Implementations§
Source§impl<'de, WincodeConfig: Config> SchemaRead<'de, WincodeConfig> for TcpHdr
impl<'de, WincodeConfig: Config> SchemaRead<'de, WincodeConfig> for TcpHdr
Source§impl<WincodeConfig: Config> SchemaWrite<WincodeConfig> for TcpHdr
impl<WincodeConfig: Config> SchemaWrite<WincodeConfig> for TcpHdr
Source§impl<WincodeConfig: Config> ZeroCopy<WincodeConfig> for TcpHdrwhere
for<'_wincode_internal, '_wincode_internal, '_wincode_internal, '_wincode_internal, '_wincode_internal> [u8; 2]: ZeroCopy<WincodeConfig>,
for<'_wincode_internal, '_wincode_internal> [u8; 4]: ZeroCopy<WincodeConfig>,
for<'_wincode_internal> [u8; 0]: ZeroCopy<WincodeConfig>,
for<'_wincode_internal> BitfieldU16: ZeroCopy<WincodeConfig>,
for<'_wincode_internal> Assert<{ _ }>: IsTrue,
impl<WincodeConfig: Config> ZeroCopy<WincodeConfig> for TcpHdrwhere
for<'_wincode_internal, '_wincode_internal, '_wincode_internal, '_wincode_internal, '_wincode_internal> [u8; 2]: ZeroCopy<WincodeConfig>,
for<'_wincode_internal, '_wincode_internal> [u8; 4]: ZeroCopy<WincodeConfig>,
for<'_wincode_internal> [u8; 0]: ZeroCopy<WincodeConfig>,
for<'_wincode_internal> BitfieldU16: ZeroCopy<WincodeConfig>,
for<'_wincode_internal> Assert<{ _ }>: IsTrue,
Source§fn from_bytes<'de>(bytes: &'de [u8], config: C) -> Result<&'de Self, ReadError>where
Self: Sized + SchemaRead<'de, C, Dst = Self>,
fn from_bytes<'de>(bytes: &'de [u8], config: C) -> Result<&'de Self, ReadError>where
Self: Sized + SchemaRead<'de, C, Dst = Self>,
Like
crate::ZeroCopy::from_bytes, but allows the caller to provide a custom configuration.Source§fn from_bytes_mut<'de>(
bytes: &'de mut [u8],
config: C,
) -> Result<&'de mut Self, ReadError>where
Self: Sized + SchemaRead<'de, C, Dst = Self>,
fn from_bytes_mut<'de>(
bytes: &'de mut [u8],
config: C,
) -> Result<&'de mut Self, ReadError>where
Self: Sized + SchemaRead<'de, C, Dst = Self>,
Like
crate::ZeroCopy::from_bytes_mut, but allows the caller to provide a custom configuration.impl Copy for TcpHdr
Auto Trait Implementations§
impl Freeze for TcpHdr
impl RefUnwindSafe for TcpHdr
impl Send for TcpHdr
impl Sync for TcpHdr
impl Unpin for TcpHdr
impl UnsafeUnpin for TcpHdr
impl UnwindSafe for TcpHdr
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<'de, T> Deserialize<'de> for Twhere
T: SchemaRead<'de, Configuration>,
impl<'de, T> Deserialize<'de> for Twhere
T: SchemaRead<'de, Configuration>,
Source§impl<'de, T, C> Deserialize<'de, C> for Twhere
C: Config,
T: SchemaRead<'de, C>,
impl<'de, T, C> Deserialize<'de, C> for Twhere
C: Config,
T: SchemaRead<'de, C>,
Source§impl<T, C> DeserializeOwned<C> for Twhere
C: Config,
T: SchemaReadOwned<C>,
impl<T, C> DeserializeOwned<C> for Twhere
C: Config,
T: SchemaReadOwned<C>,
Source§fn deserialize_from<'de>(src: impl Reader<'de>) -> Result<Self::Dst, ReadError>
fn deserialize_from<'de>(src: impl Reader<'de>) -> Result<Self::Dst, ReadError>
Deserialize from the given
Reader into a new Self::Dst.Source§fn deserialize_from_into<'de>(
src: impl Reader<'de>,
dst: &mut MaybeUninit<Self::Dst>,
) -> Result<(), ReadError>
fn deserialize_from_into<'de>( src: impl Reader<'de>, dst: &mut MaybeUninit<Self::Dst>, ) -> Result<(), ReadError>
Deserialize from the given
Reader into dst.Source§impl<T> DeserializeOwned for Twhere
T: SchemaReadOwned<Configuration>,
impl<T> DeserializeOwned for Twhere
T: SchemaReadOwned<Configuration>,
Source§fn deserialize_from<'de>(src: impl Reader<'de>) -> Result<Self::Dst, ReadError>
fn deserialize_from<'de>(src: impl Reader<'de>) -> Result<Self::Dst, ReadError>
Deserialize from the given
Reader into a new Self::Dst.Source§fn deserialize_from_into<'de>(
src: impl Reader<'de>,
dst: &mut MaybeUninit<Self::Dst>,
) -> Result<(), ReadError>
fn deserialize_from_into<'de>( src: impl Reader<'de>, dst: &mut MaybeUninit<Self::Dst>, ) -> Result<(), ReadError>
Deserialize from the given
Reader into dst.Source§impl<T, C> Serialize<C> for T
impl<T, C> Serialize<C> for T
Source§fn serialize_into(
dst: impl Writer,
src: &Self::Src,
config: C,
) -> Result<(), WriteError>
fn serialize_into( dst: impl Writer, src: &Self::Src, config: C, ) -> Result<(), WriteError>
Serialize a serializable type into the given
Writer.Source§fn serialized_size(src: &Self::Src, config: C) -> Result<u64, WriteError>
fn serialized_size(src: &Self::Src, config: C) -> Result<u64, WriteError>
Get the size in bytes of the type when serialized.
Source§impl<T> Serialize for T
impl<T> Serialize for T
Source§fn serialize_into(dst: impl Writer, src: &Self::Src) -> Result<(), WriteError>
fn serialize_into(dst: impl Writer, src: &Self::Src) -> Result<(), WriteError>
Serialize a serializable type into the given byte buffer.
Source§fn serialized_size(src: &Self::Src) -> Result<u64, WriteError>
fn serialized_size(src: &Self::Src) -> Result<u64, WriteError>
Get the size in bytes of the type when serialized.