pub struct Ipv4Repr {
pub src_addr: Address,
pub dst_addr: Address,
pub next_header: Protocol,
pub payload_len: usize,
pub hop_limit: u8,
}
Expand description
A high-level representation of an Internet Protocol version 4 packet header.
Fields§
§src_addr: Address
§dst_addr: Address
§next_header: Protocol
§payload_len: usize
§hop_limit: u8
Implementations§
Source§impl Repr
impl Repr
Sourcepub fn parse<T: AsRef<[u8]> + ?Sized>(
packet: &Packet<&T>,
checksum_caps: &ChecksumCapabilities,
) -> Result<Repr>
pub fn parse<T: AsRef<[u8]> + ?Sized>( packet: &Packet<&T>, checksum_caps: &ChecksumCapabilities, ) -> Result<Repr>
Parse an Internet Protocol version 4 packet and return a high-level representation.
Sourcepub const fn buffer_len(&self) -> usize
pub const fn buffer_len(&self) -> usize
Return the length of a header that will be emitted from this high-level representation.
Sourcepub fn emit<T: AsRef<[u8]> + AsMut<[u8]>>(
&self,
packet: &mut Packet<T>,
checksum_caps: &ChecksumCapabilities,
)
pub fn emit<T: AsRef<[u8]> + AsMut<[u8]>>( &self, packet: &mut Packet<T>, checksum_caps: &ChecksumCapabilities, )
Emit a high-level representation into an Internet Protocol version 4 packet.
Trait Implementations§
impl Copy for Repr
impl Eq for Repr
impl StructuralPartialEq for Repr
Auto Trait Implementations§
impl Freeze for Repr
impl RefUnwindSafe for Repr
impl Send for Repr
impl Sync for Repr
impl Unpin for Repr
impl UnwindSafe for Repr
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, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)