pub struct Packet { /* private fields */ }
Implementations§
Source§impl Packet
impl Packet
pub fn new(buf: &[u8]) -> Packet
pub fn out(&self) -> Vec<u8> ⓘ
pub fn source_addr(&self) -> IpAddr
pub fn write_source_addr(&mut self, addr: IpAddr)
pub fn dest_addr(&self) -> IpAddr
pub fn write_dest_addr(&mut self, addr: IpAddr)
pub fn total_length(&self) -> usize
pub fn version(&self) -> u8
pub fn ihl(&self) -> u8
pub fn type_of_service(&self) -> u8
pub fn identification(&self) -> u16
pub fn flags(&self) -> u8
pub fn ttl(&self) -> u8
Sourcepub fn protocol(&self) -> u8
pub fn protocol(&self) -> u8
This field indicates the next level protocol used in the data portion of the internet datagram. The values for various protocols are specified in “Assigned Numbers” [9]. 0 ICMP 6 TCP 17 UDP
pub fn checksum(&self) -> u16
pub fn write_checksum(&mut self, checksum: u16)
pub fn cal_checksum(&self) -> u16
pub fn payload(&self) -> &[u8] ⓘ
pub fn payload_mut(&mut self) -> &mut [u8] ⓘ
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Packet
impl RefUnwindSafe for Packet
impl Send for Packet
impl Sync for Packet
impl Unpin for Packet
impl UnwindSafe for Packet
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