From eb50b8ebe4447cafe23d5f1d4ca9351e594e917e Mon Sep 17 00:00:00 2001 From: Tobias Fella Date: Sat, 26 Feb 2022 22:22:51 +0100 Subject: Check that decrypted events are for the current room --- lib/room.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'lib/room.cpp') diff --git a/lib/room.cpp b/lib/room.cpp index ea9915c3..d0ac10f9 100644 --- a/lib/room.cpp +++ b/lib/room.cpp @@ -1487,7 +1487,13 @@ RoomEventPtr Room::decryptMessage(const EncryptedEvent& encryptedEvent) // qCWarning(E2EE) << "Encrypted message is empty"; return {}; } - return encryptedEvent.createDecrypted(decrypted); + auto decryptedEvent = encryptedEvent.createDecrypted(decrypted); + if (decryptedEvent->roomId() == id()) { + return decryptedEvent; + } else { + qCWarning(E2EE) << "Decrypted event" << encryptedEvent.id() << "not for this room; discarding."; + return nullptr; + } #endif // Quotient_E2EE_ENABLED } -- cgit v1.2.3