1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-12-05 17:02:07 +03:00

Fix creating a key backup with cross signing diabled

It broke if no scret key callback was supplied but a cross-signing
identity did exist (as hopefully explained in comment).

Fixes https://github.com/vector-im/riot-web/issues/11763
This commit is contained in:
David Baker
2020-01-03 13:52:36 +00:00
parent fe2bdd027e
commit 20bc8071fc

View File

@@ -1505,8 +1505,11 @@ MatrixClient.prototype.createKeyBackupVersion = async function(info) {
// favour of just signing with the cross-singing master key.
await this._crypto._signObject(data.auth_data);
if (this._crypto._crossSigningInfo.getId()) {
if (this._cryptoCallbacks.getSecretStorageKey && this._crypto._crossSigningInfo.getId()) {
// now also sign the auth data with the cross-signing master key
// we check for the callback explicitly here because we still want to be able
// to create an un-cross-signed key backup if there is a cross-signing key but
// no callback supplied.
await this._crypto._crossSigningInfo.signObject(data.auth_data, "master");
}