pub trait PcapSink {
// Required method
fn write(&mut self, data: &[u8]);
// Provided methods
fn flush(&mut self) { ... }
fn write_u16(&mut self, value: u16) { ... }
fn write_u32(&mut self, value: u32) { ... }
fn global_header(&mut self, link_type: PcapLinkType) { ... }
fn packet_header(&mut self, timestamp: Instant, length: usize) { ... }
fn packet(&mut self, timestamp: Instant, packet: &[u8]) { ... }
}
Expand description
A packet capture sink.
Required Methods§
Provided Methods§
Sourcefn global_header(&mut self, link_type: PcapLinkType)
fn global_header(&mut self, link_type: PcapLinkType)
Write the libpcap global header into the sink.
This method may be overridden e.g. if special synchronization is necessary.
Sourcefn packet_header(&mut self, timestamp: Instant, length: usize)
fn packet_header(&mut self, timestamp: Instant, length: usize)
Write the libpcap packet header into the sink.
See also the note for global_header.
§Panics
This function panics if length
is greater than 65535.
Sourcefn packet(&mut self, timestamp: Instant, packet: &[u8])
fn packet(&mut self, timestamp: Instant, packet: &[u8])
Write the libpcap packet header followed by packet data into the sink.
See also the note for global_header.