pub struct BranchInfo { /* private fields */ }Available on 32-bit or 64-bit only.
Expand description
The information a sub-group branch needs from its parent group.
Export this from the parent group with
MlsGroup::branch_info and pass it to
the subgroup branch APIs: the sender uses
MlsGroupBuilder::branch and the
receiver uses
StagedWelcome::build_from_branch.
This is an owned snapshot, so it does not borrow the parent group and can outlive it.
This carries the parent’s resumption PSK secret, which is sensitive key material and must be handled accordingly.
Implementations§
Source§impl BranchInfo
impl BranchInfo
Sourcepub fn version(&self) -> ProtocolVersion
pub fn version(&self) -> ProtocolVersion
The protocol version of the parent group.
Sourcepub fn ciphersuite(&self) -> Ciphersuite
pub fn ciphersuite(&self) -> Ciphersuite
The ciphersuite of the parent group.
Sourcepub fn epoch(&self) -> GroupEpoch
pub fn epoch(&self) -> GroupEpoch
The epoch of the parent group from which this branch is taken.
Sourcepub fn member_credentials(&self) -> &[Credential]
pub fn member_credentials(&self) -> &[Credential]
The credentials of the parent group’s members, used by the receiver to check that every sub-group member is also a parent-group member.
Trait Implementations§
Source§impl Clone for BranchInfo
impl Clone for BranchInfo
Auto Trait Implementations§
impl Freeze for BranchInfo
impl RefUnwindSafe for BranchInfo
impl Send for BranchInfo
impl Sync for BranchInfo
impl Unpin for BranchInfo
impl UnsafeUnpin for BranchInfo
impl UnwindSafe for BranchInfo
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
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> ⓘ
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