pub struct PublicMessageIn { /* private fields */ }Expand description
PublicMessageIn is a framing structure for MLS messages. It can contain
Proposals, Commits and application messages.
- Message framing
// draft-ietf-mls-protocol-17
struct {
FramedContent content;
FramedContentAuthData auth;
optional<MAC> membership_tag;
} PublicMessage;Implementations§
Source§impl PublicMessageIn
impl PublicMessageIn
Sourcepub fn unverified_app_ephemeral_proposals(
&self,
component_id: ComponentId,
) -> Vec<&AppEphemeralProposal>
Available on crate feature extensions-draft only.
pub fn unverified_app_ephemeral_proposals( &self, component_id: ComponentId, ) -> Vec<&AppEphemeralProposal>
extensions-draft only.Returns the AppEphemeralProposals for component_id that this
commit message carries by value, in the order they appear in the
commit. Returns an empty vector if the message is not a commit.
This reads the deserialized message directly and requires no group state. A client that receives an external commit for a group it is not yet a member of can use it to inspect attached application data before deciding how to proceed with the join.
The returned data is unauthenticated. Neither the signature nor the
sender of the message has been checked at this point, so callers must
treat the data as untrusted until the commit has been verified against
the group, for example by processing it and reading the proposals from
the resulting StagedCommit.
Source§impl PublicMessageIn
impl PublicMessageIn
Sourcepub fn content_type(&self) -> ContentType
pub fn content_type(&self) -> ContentType
Returns the ContentType of the message.
Sourcepub fn epoch(&self) -> GroupEpoch
pub fn epoch(&self) -> GroupEpoch
Get the group epoch.
Sourcepub fn confirmation_tag(&self) -> Option<&ConfirmationTag>
pub fn confirmation_tag(&self) -> Option<&ConfirmationTag>
Get the ConfirmationTag.
Trait Implementations§
Source§impl Clone for PublicMessageIn
impl Clone for PublicMessageIn
Source§fn clone(&self) -> PublicMessageIn
fn clone(&self) -> PublicMessageIn
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PublicMessageIn
impl Debug for PublicMessageIn
Source§impl Deserialize for PublicMessageIn
impl Deserialize for PublicMessageIn
Source§fn tls_deserialize<R: Read>(bytes: &mut R) -> Result<Self, Error>
fn tls_deserialize<R: Read>(bytes: &mut R) -> Result<Self, Error>
std only.bytes from the provided a std::io::Read
and returns the populated struct. Read moreSource§impl<'de> Deserialize<'de> for PublicMessageIn
impl<'de> Deserialize<'de> for PublicMessageIn
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl DeserializeBytes for PublicMessageIn
impl DeserializeBytes for PublicMessageIn
Source§impl From<PublicMessage> for PublicMessageIn
impl From<PublicMessage> for PublicMessageIn
Source§fn from(v: PublicMessage) -> Self
fn from(v: PublicMessage) -> Self
Source§impl From<PublicMessageIn> for ProtocolMessage
impl From<PublicMessageIn> for ProtocolMessage
Source§fn from(public_message: PublicMessageIn) -> Self
fn from(public_message: PublicMessageIn) -> Self
Source§impl From<PublicMessageIn> for PublicMessage
Available on crate features test-utils only.
impl From<PublicMessageIn> for PublicMessage
test-utils only.Source§fn from(v: PublicMessageIn) -> Self
fn from(v: PublicMessageIn) -> Self
Source§impl PartialEq for PublicMessageIn
impl PartialEq for PublicMessageIn
Source§impl Serialize for PublicMessageIn
impl Serialize for PublicMessageIn
Source§impl Serialize for PublicMessageIn
impl Serialize for PublicMessageIn
Source§impl Size for PublicMessageIn
impl Size for PublicMessageIn
fn tls_serialized_len(&self) -> usize
impl StructuralPartialEq for PublicMessageIn
Auto Trait Implementations§
impl Freeze for PublicMessageIn
impl RefUnwindSafe for PublicMessageIn
impl Send for PublicMessageIn
impl Sync for PublicMessageIn
impl Unpin for PublicMessageIn
impl UnsafeUnpin for PublicMessageIn
impl UnwindSafe for PublicMessageIn
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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