fn process_self_master_key_signatures(
session: &SessionInfo,
device_keys: &BTreeMap<OwnedDeviceId, DeviceKeysRow>,
stored_master_key: Option<&CrossSigningKeyRow>,
new_master_key: &CrossSigningKey,
) -> Result<(Option<ValidSignature>, Option<Failure>), SignaturesUploadError>Expand description
This function is part of upload_keys_signature and processes signatures
uploaded for the Master key owned by the requester.
ยงFailures
Here are the cases that will produce failures to be returned by the endpoint:
- We do not have the corresponding stored Master key (e.g it is not in the database, or the one we have is different).
- We do not have the corresponding stored device keys that was used to sign the Master key.
- The actual signature is invalid (See https://spec.matrix.org/v1.16/appendices/#signing-json).