Mercurial > libervia-backend
diff sat/memory/encryption.py @ 3228:cc3fea71c365
core (memory/encryption): set encrypted flag also for outgoing messages and put it in extra:
- `encrypted` flag is now put directly in extra, so that there is nothing to change when
sending the message to bridge for frontends to be aware of it.
- this flag is now also set when markAsEncrypted is used, so frontend can display
appropriate indicator to show that outgoing message is encrypted or not.
author | Goffi <goffi@goffi.org> |
---|---|
date | Mon, 23 Mar 2020 16:53:03 +0100 |
parents | 2f406b762788 |
children | e756e0eb1be4 |
line wrap: on
line diff
--- a/sat/memory/encryption.py Sun Mar 22 18:47:59 2020 +0100 +++ b/sat/memory/encryption.py Mon Mar 23 16:53:03 2020 +0100 @@ -447,6 +447,7 @@ f"encryption flag must not be set for groupchat if encryption algorithm " f"({encryption['plugin'].name}) is directed!") mess_data[C.MESS_KEY_ENCRYPTION] = encryption + self.markAsEncrypted(mess_data) ## Misc ## @@ -457,7 +458,7 @@ the plugin @param mess_data(dict): message data as used in post treat workflow """ - mess_data[C.MESS_KEY_ENCRYPTED] = True + mess_data['extra'][C.MESS_KEY_ENCRYPTED] = True return mess_data def isEncryptionRequested(self, mess_data, namespace=None): @@ -478,12 +479,12 @@ return plugin.namespace == namespace def isEncrypted(self, mess_data): - """Helper method to check if an incoming message has the e2e encrypted flag + """Helper method to check if a message has the e2e encrypted flag @param mess_data(dict): message data @return (bool): True if the encrypted flag is present """ - return mess_data.get(C.MESS_KEY_ENCRYPTED, False) + return mess_data['extra'].get(C.MESS_KEY_ENCRYPTED, False) def markAsTrusted(self, mess_data):