Trait pnet::datalink::EthernetDataLinkSender
[−]
[src]
pub trait EthernetDataLinkSender: Send { fn build_and_send(&mut self, num_packets: usize, packet_size: usize, func: &mut FnMut(MutableEthernetPacket)) -> Option<Result<()>>; fn send_to(&mut self, packet: &EthernetPacket, dst: Option<NetworkInterface>) -> Option<Result<()>>; }
Trait to enable sending $packet packets
Required Methods
fn build_and_send(&mut self, num_packets: usize, packet_size: usize, func: &mut FnMut(MutableEthernetPacket)) -> Option<Result<()>>
Create and send a number of packets
This will call func
num_packets
times. The function will be provided with a
mutable packet to manipulate, which will then be sent. This allows packets to be
built in-place, avoiding the copy required for send
. If there is not sufficient
capacity in the buffer, None will be returned.
fn send_to(&mut self, packet: &EthernetPacket, dst: Option<NetworkInterface>) -> Option<Result<()>>
Send a packet
This may require an additional copy compared to build_and_send
, depending on the
operating system being used. The second parameter is currently ignored, however
None
should be passed.