view mod_deny_omemo/mod_deny_omemo.lua @ 4841:f69c5a443156

mod_rest: Fix nested message stanzas in XEP-0297 containers It's all a bit awkward because it doesn't normally use the whole schema directly, but rather checks which stanza type is used and picks out that property as a schema. Which also prevents references from working.
author Kim Alvefur <zash@zash.se>
date Wed, 29 Dec 2021 19:40:28 +0100
parents 2ad35f08bd57
children
line wrap: on
line source

local st = require "util.stanza";

local omemo_namespace_prefix = "eu.siacs.conversations.axolotl."

module:hook("iq/bare/http://jabber.org/protocol/pubsub:pubsub", function (event)
	local origin, stanza = event.origin, event.stanza;

	local node = stanza.tags[1].tags[1].attr.node;
	if node and node:sub(1, #omemo_namespace_prefix) == omemo_namespace_prefix then
		origin.send(st.error_reply(stanza, "cancel", "item-not-found", "OMEMO is disabled"));
		return true;
	end
end, 10);