retina_datatypes

Trait PacketList

Source
pub trait PacketList {
    // Required methods
    fn new(first_pkt: &L4Pdu) -> Self;
    fn track_packet(&mut self, pdu: &L4Pdu, reassembled: bool);
    fn clear(&mut self);
}
Expand description

Trait for a datatype that is built from a list of raw packets.

Required Methods§

Source

fn new(first_pkt: &L4Pdu) -> Self

Initialize internal data; called once per connection. Note first_pkt will also be delivered to update.

Source

fn track_packet(&mut self, pdu: &L4Pdu, reassembled: bool)

New packet in connection received (or reassembled, if reassembled=true) Note this may be invoked both pre- and post-reassembly; types should check reassembled to avoid double-counting.

Source

fn clear(&mut self)

Clear internal data; called if connection no longer matches filter that requires the Tracked type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§