Enum mixnet::core::SessionPhase
source · pub enum SessionPhase {
CoverToCurrent,
RequestsToCurrent,
CoverToPrev,
DisconnectFromPrev,
}
Expand description
Each session should progress through these phases in order.
Variants§
CoverToCurrent
Generate cover traffic to the current session’s mixnode set.
RequestsToCurrent
Build requests using the current session’s mixnode set. The previous session’s mixnode set may be used if this is explicitly requested.
CoverToPrev
Only send cover (and forwarded) traffic to the previous session’s mixnode set. Any packets in the authored packet queue for the previous session at this point are effectively dropped.
DisconnectFromPrev
Disconnect the previous session’s mixnode set.
Implementations§
source§impl SessionPhase
impl SessionPhase
sourcepub fn allow_requests_and_replies(
self,
rel_session_index: RelSessionIndex,
) -> bool
pub fn allow_requests_and_replies( self, rel_session_index: RelSessionIndex, ) -> bool
Should we allow pushing to and popping from the authored packet queue for the specified session?
sourcepub fn default_request_session(self) -> RelSessionIndex
pub fn default_request_session(self) -> RelSessionIndex
Which session should requests be built for by default?
Trait Implementations§
source§impl Clone for SessionPhase
impl Clone for SessionPhase
source§fn clone(&self) -> SessionPhase
fn clone(&self) -> SessionPhase
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 Display for SessionPhase
impl Display for SessionPhase
source§impl Ord for SessionPhase
impl Ord for SessionPhase
source§fn cmp(&self, other: &SessionPhase) -> Ordering
fn cmp(&self, other: &SessionPhase) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for SessionPhase
impl PartialEq for SessionPhase
source§fn eq(&self, other: &SessionPhase) -> bool
fn eq(&self, other: &SessionPhase) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for SessionPhase
impl PartialOrd for SessionPhase
source§fn partial_cmp(&self, other: &SessionPhase) -> Option<Ordering>
fn partial_cmp(&self, other: &SessionPhase) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Copy for SessionPhase
impl Eq for SessionPhase
impl StructuralPartialEq for SessionPhase
Auto Trait Implementations§
impl Freeze for SessionPhase
impl RefUnwindSafe for SessionPhase
impl Send for SessionPhase
impl Sync for SessionPhase
impl Unpin for SessionPhase
impl UnwindSafe for SessionPhase
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: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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