pub struct UnconfirmedMessage {
pub message: MlsMessageOut,
pub epoch: GroupEpoch,
pub generation: u32,
pub generation_id: Option<GenerationId>,
}virtual-clients-draft and (32-bit or 64-bit) only.Expand description
The result of MlsGroup::create_unconfirmed_message: the encrypted
message together with the bookkeeping a virtual client needs to coordinate
the send with the DS.
Fields§
§message: MlsMessageOutThe encrypted application message to fan out.
epoch: GroupEpochThe epoch the message was encrypted in. Pass it together with
generation to MlsGroup::confirm_application_message once the DS
has accepted the message, to delete the retained encryption secret.
generation: u32The ratchet generation used for encryption. Pass it together with
epoch to MlsGroup::confirm_application_message once the DS has
accepted the message, to delete the retained encryption secret.
generation_id: Option<GenerationId>The GenerationId to attach to the fanned-out message, present when
the group is bound to an emulation epoch and None otherwise. A
strongly-consistent DS compares it across siblings to detect generation
collisions.
Trait Implementations§
Source§impl Clone for UnconfirmedMessage
impl Clone for UnconfirmedMessage
Source§fn clone(&self) -> UnconfirmedMessage
fn clone(&self) -> UnconfirmedMessage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for UnconfirmedMessage
impl RefUnwindSafe for UnconfirmedMessage
impl Send for UnconfirmedMessage
impl Sync for UnconfirmedMessage
impl Unpin for UnconfirmedMessage
impl UnsafeUnpin for UnconfirmedMessage
impl UnwindSafe for UnconfirmedMessage
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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