1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-12-19 10:22:30 +03:00

Improve decryption error messages

Attempt to make the decryption errors less obscure
This commit is contained in:
Richard van der Hoff
2016-11-24 14:51:35 +00:00
parent c5afcaeaf7
commit ce71de0d78
3 changed files with 9 additions and 5 deletions

View File

@@ -467,7 +467,7 @@ MatrixClient.prototype.isRoomEncrypted = function(roomId) {
*/ */
function _decryptEvent(client, event) { function _decryptEvent(client, event) {
if (!client._crypto) { if (!client._crypto) {
_badEncryptedMessage(event, "**Encryption not enabled**"); _badEncryptedMessage(event, "Encryption not enabled");
return; return;
} }
@@ -477,7 +477,7 @@ function _decryptEvent(client, event) {
if (!(e instanceof Crypto.DecryptionError)) { if (!(e instanceof Crypto.DecryptionError)) {
throw e; throw e;
} }
_badEncryptedMessage(event, "**" + e.message + "**"); _badEncryptedMessage(event, e.message);
return; return;
} }
} }
@@ -487,7 +487,7 @@ function _badEncryptedMessage(event, reason) {
type: "m.room.message", type: "m.room.message",
content: { content: {
msgtype: "m.bad.encrypted", msgtype: "m.bad.encrypted",
body: reason, body: "** Unable to decrypt: " + reason + " **",
}, },
}); });
} }

View File

@@ -458,7 +458,9 @@ MegolmDecryption.prototype.decryptEvent = function(event) {
if (res === null) { if (res === null) {
// We've got a message for a session we don't have. // We've got a message for a session we don't have.
this._addEventToPendingList(event); this._addEventToPendingList(event);
throw new base.DecryptionError("Unknown inbound session id"); throw new base.DecryptionError(
"The sender's device has not sent us the keys for this message."
);
} }
var payload = JSON.parse(res.result); var payload = JSON.parse(res.result);

View File

@@ -1220,7 +1220,9 @@ Crypto.prototype._getRoomDecryptor = function(roomId, algorithm) {
var AlgClass = algorithms.DECRYPTION_CLASSES[algorithm]; var AlgClass = algorithms.DECRYPTION_CLASSES[algorithm];
if (!AlgClass) { if (!AlgClass) {
throw new algorithms.DecryptionError("Unable to decrypt " + algorithm); throw new algorithms.DecryptionError(
'Unknown encryption algorithm "' + algorithm + '".'
);
} }
alg = new AlgClass({ alg = new AlgClass({
userId: this._userId, userId: this._userId,