#[non_exhaustive]pub struct ServerSigningKeys {
pub server_name: OwnedServerName,
pub verify_keys: BTreeMap<OwnedKeyId<SigningKeyAlgorithm, ServerSigningKeyVersion>, VerifyKey>,
pub old_verify_keys: BTreeMap<OwnedKeyId<SigningKeyAlgorithm, ServerSigningKeyVersion>, OldVerifyKey>,
pub signatures: Signatures<OwnedServerName, ServerSigningKeyVersion>,
pub valid_until_ts: MilliSecondsSinceUnixEpoch,
}
Available on crate feature
api
and (crate features federation-api-c
or federation-api-s
) only.Expand description
Queried server key, signed by the notary server.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.server_name: OwnedServerName
DNS name of the homeserver.
verify_keys: BTreeMap<OwnedKeyId<SigningKeyAlgorithm, ServerSigningKeyVersion>, VerifyKey>
Public keys of the homeserver for verifying digital signatures.
old_verify_keys: BTreeMap<OwnedKeyId<SigningKeyAlgorithm, ServerSigningKeyVersion>, OldVerifyKey>
Public keys that the homeserver used to use and when it stopped using them.
signatures: Signatures<OwnedServerName, ServerSigningKeyVersion>
Digital signatures of this object signed using the verify_keys.
Map of server name to keys by key ID.
valid_until_ts: MilliSecondsSinceUnixEpoch
Timestamp when the keys should be refreshed.
This field MUST be ignored in room versions 1, 2, 3, and 4.
Implementations§
Source§impl ServerSigningKeys
impl ServerSigningKeys
Sourcepub fn new(
server_name: OwnedServerName,
valid_until_ts: MilliSecondsSinceUnixEpoch,
) -> ServerSigningKeys
pub fn new( server_name: OwnedServerName, valid_until_ts: MilliSecondsSinceUnixEpoch, ) -> ServerSigningKeys
Creates a new ServerSigningKeys
with the given server name and validity timestamp.
All other fields will be empty.
Trait Implementations§
Source§impl Clone for ServerSigningKeys
impl Clone for ServerSigningKeys
Source§fn clone(&self) -> ServerSigningKeys
fn clone(&self) -> ServerSigningKeys
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 Debug for ServerSigningKeys
impl Debug for ServerSigningKeys
Source§impl<'de> Deserialize<'de> for ServerSigningKeys
impl<'de> Deserialize<'de> for ServerSigningKeys
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ServerSigningKeys, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ServerSigningKeys, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for ServerSigningKeys
impl Serialize for ServerSigningKeys
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for ServerSigningKeys
impl RefUnwindSafe for ServerSigningKeys
impl Send for ServerSigningKeys
impl Sync for ServerSigningKeys
impl Unpin for ServerSigningKeys
impl UnwindSafe for ServerSigningKeys
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