Struct netsim_embed::icmp::IcmpPacket [−][src]
pub struct IcmpPacket<'p> { /* fields omitted */ }
A structure enabling manipulation of on the wire packets
Implementations
impl<'a> IcmpPacket<'a>
[src]
impl<'a> IcmpPacket<'a>
[src]pub fn new(packet: &'p [u8]) -> Option<IcmpPacket<'p>>
[src]
Constructs a new IcmpPacket. If the provided buffer is less than the minimum required packet size, this will return None.
pub fn owned(packet: Vec<u8, Global>) -> Option<IcmpPacket<'static>>
[src]
Constructs a new IcmpPacket. If the provided buffer is less than the minimum required packet size, this will return None. With this constructor the IcmpPacket will own its own data and the underlying buffer will be dropped when the IcmpPacket is.
pub fn to_immutable(&'p self) -> IcmpPacket<'p>
[src]
Maps from a IcmpPacket to a IcmpPacket
pub fn consume_to_immutable(self) -> IcmpPacket<'a>
[src]
Maps from a IcmpPacket to a IcmpPacket while consuming the source
pub const fn minimum_packet_size() -> usize
[src]
The minimum size (in bytes) a packet of this type can be. It’s based on the total size of the fixed-size fields.
pub fn packet_size(_packet: &Icmp) -> usize
[src]
The size (in bytes) of a Icmp instance when converted into a byte-array
pub fn get_icmp_type(&self) -> IcmpType
[src]
Get the value of the icmp_type field
pub fn get_icmp_code(&self) -> IcmpCode
[src]
Get the value of the icmp_code field
pub fn get_checksum(&self) -> u16
[src]
Get the checksum field. This field is always stored big-endian within the struct, but this accessor returns host order.
Trait Implementations
impl<'p> Debug for IcmpPacket<'p>
[src]
impl<'p> Debug for IcmpPacket<'p>
[src]impl<'p> FromPacket for IcmpPacket<'p>
[src]
impl<'p> FromPacket for IcmpPacket<'p>
[src]impl<'a> Packet for IcmpPacket<'a>
[src]
impl<'a> Packet for IcmpPacket<'a>
[src]impl<'a> PacketSize for IcmpPacket<'a>
[src]
impl<'a> PacketSize for IcmpPacket<'a>
[src]pub fn packet_size(&self) -> usize
[src]
impl<'p> PartialEq<IcmpPacket<'p>> for IcmpPacket<'p>
[src]
impl<'p> PartialEq<IcmpPacket<'p>> for IcmpPacket<'p>
[src]pub fn eq(&self, other: &IcmpPacket<'p>) -> bool
[src]
pub fn ne(&self, other: &IcmpPacket<'p>) -> bool
[src]
impl<'p> StructuralPartialEq for IcmpPacket<'p>
[src]
impl<'p> StructuralPartialEq for IcmpPacket<'p>
[src]Auto Trait Implementations
impl<'p> RefUnwindSafe for IcmpPacket<'p>
impl<'p> RefUnwindSafe for IcmpPacket<'p>
impl<'p> Send for IcmpPacket<'p>
impl<'p> Send for IcmpPacket<'p>
impl<'p> Sync for IcmpPacket<'p>
impl<'p> Sync for IcmpPacket<'p>
impl<'p> Unpin for IcmpPacket<'p>
impl<'p> Unpin for IcmpPacket<'p>
impl<'p> UnwindSafe for IcmpPacket<'p>
impl<'p> UnwindSafe for IcmpPacket<'p>
Blanket Implementations
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,