Struct pnet_packet::icmpv6::Icmpv6Packet
source · pub struct Icmpv6Packet<'p> { /* private fields */ }
Expand description
A structure enabling manipulation of on the wire packets
Implementations§
source§impl<'a> Icmpv6Packet<'a>
impl<'a> Icmpv6Packet<'a>
sourcepub fn new<'p>(packet: &'p [u8]) -> Option<Icmpv6Packet<'p>>
pub fn new<'p>(packet: &'p [u8]) -> Option<Icmpv6Packet<'p>>
Constructs a new Icmpv6Packet. If the provided buffer is less than the minimum required packet size, this will return None.
sourcepub fn owned(packet: Vec<u8>) -> Option<Icmpv6Packet<'static>>
pub fn owned(packet: Vec<u8>) -> Option<Icmpv6Packet<'static>>
Constructs a new Icmpv6Packet. If the provided buffer is less than the minimum required packet size, this will return None. With this constructor the Icmpv6Packet will own its own data and the underlying buffer will be dropped when the Icmpv6Packet is.
sourcepub fn to_immutable<'p>(&'p self) -> Icmpv6Packet<'p>
pub fn to_immutable<'p>(&'p self) -> Icmpv6Packet<'p>
Maps from a Icmpv6Packet to a Icmpv6Packet
sourcepub fn consume_to_immutable(self) -> Icmpv6Packet<'a>
pub fn consume_to_immutable(self) -> Icmpv6Packet<'a>
Maps from a Icmpv6Packet to a Icmpv6Packet while consuming the source
sourcepub const fn minimum_packet_size() -> usize
pub const fn minimum_packet_size() -> usize
The minimum size (in bytes) a packet of this type can be. It’s based on the total size of the fixed-size fields.
sourcepub fn packet_size(_packet: &Icmpv6) -> usize
pub fn packet_size(_packet: &Icmpv6) -> usize
The size (in bytes) of a Icmpv6 instance when converted into a byte-array
sourcepub fn get_icmpv6_type(&self) -> Icmpv6Type
pub fn get_icmpv6_type(&self) -> Icmpv6Type
Get the value of the icmpv6_type field
sourcepub fn get_icmpv6_code(&self) -> Icmpv6Code
pub fn get_icmpv6_code(&self) -> Icmpv6Code
Get the value of the icmpv6_code field
sourcepub fn get_checksum(&self) -> u16be
pub fn get_checksum(&self) -> u16be
Get the checksum field. This field is always stored big-endian within the struct, but this accessor returns host order.
Trait Implementations§
source§impl<'p> Debug for Icmpv6Packet<'p>
impl<'p> Debug for Icmpv6Packet<'p>
source§impl<'p> FromPacket for Icmpv6Packet<'p>
impl<'p> FromPacket for Icmpv6Packet<'p>
source§impl<'a> Packet for Icmpv6Packet<'a>
impl<'a> Packet for Icmpv6Packet<'a>
source§impl<'a> PacketSize for Icmpv6Packet<'a>
impl<'a> PacketSize for Icmpv6Packet<'a>
source§fn packet_size(&self) -> usize
fn packet_size(&self) -> usize
source§impl<'p> PartialEq for Icmpv6Packet<'p>
impl<'p> PartialEq for Icmpv6Packet<'p>
source§fn eq(&self, other: &Icmpv6Packet<'p>) -> bool
fn eq(&self, other: &Icmpv6Packet<'p>) -> bool
self
and other
values to be equal, and is used
by ==
.