aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/omemo/src/trust_manager.vala4
-rw-r--r--xmpp-vala/src/module/xep/0380_explicit_encryption.vala8
2 files changed, 11 insertions, 1 deletions
diff --git a/plugins/omemo/src/trust_manager.vala b/plugins/omemo/src/trust_manager.vala
index 75c0d809..cd0971f8 100644
--- a/plugins/omemo/src/trust_manager.vala
+++ b/plugins/omemo/src/trust_manager.vala
@@ -247,7 +247,9 @@ public class TrustManager {
StanzaNode? _encrypted = stanza.stanza.get_subnode("encrypted", NS_URI);
if (_encrypted == null || MessageFlag.get_flag(stanza) != null || stanza.from == null) return false;
StanzaNode encrypted = (!)_encrypted;
- if (message.body == null) message.body = "[This message is OMEMO encrypted]";
+ if (message.body == null && Xep.ExplicitEncryption.get_encryption_tag(stanza) == NS_URI) {
+ message.body = "[This message is OMEMO encrypted]"; // TODO temporary
+ };
if (!Plugin.ensure_context()) return false;
MessageFlag flag = new MessageFlag();
stanza.add_flag(flag);
diff --git a/xmpp-vala/src/module/xep/0380_explicit_encryption.vala b/xmpp-vala/src/module/xep/0380_explicit_encryption.vala
index 710da92d..e956bc43 100644
--- a/xmpp-vala/src/module/xep/0380_explicit_encryption.vala
+++ b/xmpp-vala/src/module/xep/0380_explicit_encryption.vala
@@ -10,5 +10,13 @@ public static void add_encryption_tag_to_message(MessageStanza message, string n
message.stanza.put_node(encryption);
}
+
+public static string? get_encryption_tag(MessageStanza message) {
+ StanzaNode? encryption_node = message.stanza.get_subnode("encryption", NS_URI);
+ if (encryption_node != null) {
+ return encryption_node.get_attribute("namespace", NS_URI);
+ }
+ return null;
+}
}