Struct zero_packet::datalink::arp::ArpBuilder
source · pub struct ArpBuilder<'a> {
pub data: &'a mut [u8],
}
Expand description
Represents an ARP header.
Fields§
§data: &'a mut [u8]
Implementations§
source§impl<'a> ArpBuilder<'a>
impl<'a> ArpBuilder<'a>
sourcepub fn new(data: &'a mut [u8]) -> Result<Self, &'static str>
pub fn new(data: &'a mut [u8]) -> Result<Self, &'static str>
Creates a new Arp
from the given slice.
sourcepub fn header_length(&self) -> usize
pub fn header_length(&self) -> usize
Returns the header length in bytes.
sourcepub fn set_htype(&mut self, hardware_type: u16)
pub fn set_htype(&mut self, hardware_type: u16)
Sets the hardware type field.
Specifies the type of hardware used for the network (e.g. Ethernet).
sourcepub fn set_ptype(&mut self, protocol_type: u16)
pub fn set_ptype(&mut self, protocol_type: u16)
Sets the protocol type field.
Specifies the type of protocol address (e.g. IPv4).
sourcepub fn set_hlen(&mut self, hardware_address_length: u8)
pub fn set_hlen(&mut self, hardware_address_length: u8)
Sets the hardware length field.
Specifies the length of the hardware address in bytes.
sourcepub fn set_plen(&mut self, protocol_address_length: u8)
pub fn set_plen(&mut self, protocol_address_length: u8)
Sets the protocol length field.
Specifies the length of the protocol address in bytes.
sourcepub fn set_oper(&mut self, operation: u16)
pub fn set_oper(&mut self, operation: u16)
Sets the operation field.
Specifies the operation being performed (e.g. request, reply).
sourcepub fn set_sha(&mut self, sender_hardware_address: &[u8; 6])
pub fn set_sha(&mut self, sender_hardware_address: &[u8; 6])
Sets the sender hardware address field.
Specifies the hardware address of the sender.
sourcepub fn set_spa(&mut self, sender_protocol_address: &[u8; 4])
pub fn set_spa(&mut self, sender_protocol_address: &[u8; 4])
Sets the sender protocol address field.
Specifies the protocol address of the sender.
Auto Trait Implementations§
impl<'a> Freeze for ArpBuilder<'a>
impl<'a> RefUnwindSafe for ArpBuilder<'a>
impl<'a> Send for ArpBuilder<'a>
impl<'a> Sync for ArpBuilder<'a>
impl<'a> Unpin for ArpBuilder<'a>
impl<'a> !UnwindSafe for ArpBuilder<'a>
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