Struct retina_datatypes::conn_fts::ConnDuration
source · pub struct ConnDuration {
pub start_ts: Instant,
pub last_ts: Instant,
}
Expand description
Tracks the start (first packet seen) and end (last packet seen) times of a connection
Fields§
§start_ts: Instant
§last_ts: Instant
Implementations§
source§impl ConnDuration
impl ConnDuration
Trait Implementations§
source§impl Clone for ConnDuration
impl Clone for ConnDuration
source§fn clone(&self) -> ConnDuration
fn clone(&self) -> ConnDuration
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ConnDuration
impl Debug for ConnDuration
source§impl Serialize for ConnDuration
impl Serialize for ConnDuration
source§impl Tracked for ConnDuration
impl Tracked for ConnDuration
source§fn new(_first_pkt: &L4Pdu) -> Self
fn new(_first_pkt: &L4Pdu) -> Self
Initialize internal data; called once per connection.
Note
first_pkt
will also be delivered to update
.source§fn clear(&mut self)
fn clear(&mut self)
Clear internal data; called if connection no longer matches filter
that requires the Tracked type.
source§fn update(&mut self, _pdu: &L4Pdu, reassembled: bool)
fn update(&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 stream_protocols() -> Vec<&'static str>
fn stream_protocols() -> Vec<&'static str>
The stream protocols (lower-case) required for this datatype.
See
IMPLEMENTED_PROTOCOLS
in retina_core for list of supported protocols.Auto Trait Implementations§
impl Freeze for ConnDuration
impl RefUnwindSafe for ConnDuration
impl Send for ConnDuration
impl Sync for ConnDuration
impl Unpin for ConnDuration
impl UnwindSafe for ConnDuration
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more