Struct ruma_events::key::verification::start::SasV1Content
source · #[non_exhaustive]pub struct SasV1Content {
pub key_agreement_protocols: Vec<KeyAgreementProtocol>,
pub hashes: Vec<HashAlgorithm>,
pub message_authentication_codes: Vec<MessageAuthenticationCode>,
pub short_authentication_string: Vec<ShortAuthenticationString>,
}
Expand description
The payload of an m.key.verification.start
event using the m.sas.v1
method.
To create an instance of this type, first create a SasV1ContentInit
and convert it via
SasV1Content::from
/ .into()
.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.key_agreement_protocols: Vec<KeyAgreementProtocol>
The key agreement protocols the sending device understands.
Must include at least Curve25519
or Curve25519HkdfSha256
.
hashes: Vec<HashAlgorithm>
The hash methods the sending device understands.
Must include at least sha256
.
message_authentication_codes: Vec<MessageAuthenticationCode>
The message authentication codes that the sending device understands.
Must include at least hkdf-hmac-sha256.v2
. Should also include hkdf-hmac-sha256
for
compatibility with older clients, though this MAC is deprecated and will be removed in a
future version of the spec.
short_authentication_string: Vec<ShortAuthenticationString>
The SAS methods the sending device (and the sending device’s user) understands.
Must include at least decimal
. Optionally can include emoji
.
Trait Implementations§
source§impl Clone for SasV1Content
impl Clone for SasV1Content
source§fn clone(&self) -> SasV1Content
fn clone(&self) -> SasV1Content
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for SasV1Content
impl Debug for SasV1Content
source§impl<'de> Deserialize<'de> for SasV1Content
impl<'de> Deserialize<'de> for SasV1Content
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 From<SasV1ContentInit> for SasV1Content
impl From<SasV1ContentInit> for SasV1Content
source§fn from(init: SasV1ContentInit) -> Self
fn from(init: SasV1ContentInit) -> Self
Creates a new SasV1Content
from the given init struct.
Auto Trait Implementations§
impl Freeze for SasV1Content
impl RefUnwindSafe for SasV1Content
impl Send for SasV1Content
impl Sync for SasV1Content
impl Unpin for SasV1Content
impl UnwindSafe for SasV1Content
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
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)
clone_to_uninit
)