Struct etherparse::IcmpEchoHeader

source ·
pub struct IcmpEchoHeader {
    pub id: u16,
    pub seq: u16,
}
Expand description

Echo Request & Response common parts between ICMPv4 and ICMPv6.

§RFC 4443 Description (ICMPv6)

Every node MUST implement an ICMPv6 Echo responder function that receives Echo Requests and originates corresponding Echo Replies. A node SHOULD also implement an application-layer interface for originating Echo Requests and receiving Echo Replies, for diagnostic purposes.

Fields§

§id: u16

An identifier to aid in matching Echo Replies to Echo Requests. May be zero.

§seq: u16

A sequence number to aid in matching Echo Replies to Echo Requests. May be zero.

Implementations§

source§

impl IcmpEchoHeader

source

pub const LEN: usize = 4usize

Serialized size of an IcmpEchoHeader header in bytes/octets.

source

pub fn to_bytes(&self) -> [u8; 4]

Return the seq + id encoded to the on the wire format.

source

pub fn from_bytes(bytes5to8: [u8; 4]) -> IcmpEchoHeader

Decodes the seq + id from the on the wire format.

Trait Implementations§

source§

impl Clone for IcmpEchoHeader

source§

fn clone(&self) -> IcmpEchoHeader

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for IcmpEchoHeader

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for IcmpEchoHeader

source§

fn eq(&self, other: &IcmpEchoHeader) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for IcmpEchoHeader

source§

impl Eq for IcmpEchoHeader

source§

impl StructuralPartialEq for IcmpEchoHeader

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.