Let textsecure devices throw on identity key change

Restore error format, accidentally removed in 43d6efcd

// FREEBIE
This commit is contained in:
lilia 2015-07-21 15:49:11 -07:00
parent 4e88d4a5cf
commit 27016e1919
2 changed files with 34 additions and 18 deletions

View file

@ -38109,15 +38109,23 @@ axolotlInternal.RecipientRecord = function() {
window.textsecure.storage.devices = {
saveKeysToDeviceObject: function(deviceObject) {
var number = textsecure.utils.unencodeNumber(deviceObject.encodedNumber)[0];
return textsecure.storage.axolotl.putIdentityKey(number, deviceObject.identityKey).then(function() {
tempKeys[deviceObject.encodedNumber] = {
preKey: deviceObject.preKey,
preKeyId: deviceObject.preKeyId,
signedKey: deviceObject.signedKey,
signedKeyId: deviceObject.signedKeyId,
signedKeySignature: deviceObject.signedKeySignature,
registrationId: deviceObject.registrationId
};
return textsecure.storage.axolotl.getIdentityKey(number).then(function(identityKey) {
if (identityKey !== undefined && deviceObject.identityKey !== undefined && getString(identityKey) != getString(deviceObject.identityKey)) {
var error = new Error("Identity key changed");
error.identityKey = deviceObject.identityKey;
throw error;
}
return textsecure.storage.axolotl.putIdentityKey(number, deviceObject.identityKey).then(function() {
tempKeys[deviceObject.encodedNumber] = {
preKey: deviceObject.preKey,
preKeyId: deviceObject.preKeyId,
signedKey: deviceObject.signedKey,
signedKeyId: deviceObject.signedKeyId,
signedKeySignature: deviceObject.signedKeySignature,
registrationId: deviceObject.registrationId
};
});
});
},

View file

@ -28,15 +28,23 @@
window.textsecure.storage.devices = {
saveKeysToDeviceObject: function(deviceObject) {
var number = textsecure.utils.unencodeNumber(deviceObject.encodedNumber)[0];
return textsecure.storage.axolotl.putIdentityKey(number, deviceObject.identityKey).then(function() {
tempKeys[deviceObject.encodedNumber] = {
preKey: deviceObject.preKey,
preKeyId: deviceObject.preKeyId,
signedKey: deviceObject.signedKey,
signedKeyId: deviceObject.signedKeyId,
signedKeySignature: deviceObject.signedKeySignature,
registrationId: deviceObject.registrationId
};
return textsecure.storage.axolotl.getIdentityKey(number).then(function(identityKey) {
if (identityKey !== undefined && deviceObject.identityKey !== undefined && getString(identityKey) != getString(deviceObject.identityKey)) {
var error = new Error("Identity key changed");
error.identityKey = deviceObject.identityKey;
throw error;
}
return textsecure.storage.axolotl.putIdentityKey(number, deviceObject.identityKey).then(function() {
tempKeys[deviceObject.encodedNumber] = {
preKey: deviceObject.preKey,
preKeyId: deviceObject.preKeyId,
signedKey: deviceObject.signedKey,
signedKeyId: deviceObject.signedKeyId,
signedKeySignature: deviceObject.signedKeySignature,
registrationId: deviceObject.registrationId
};
});
});
},