annotate mod_deny_omemo/mod_deny_omemo.lua @ 5119:048e339706ba

mod_rest: Remove manual reference expansion in schema This hack was originally added to reduce the number of definitions of common attributes (type, to, from etc) and payloads (e.g. delay). This predated pointers and references, and until now was needed because parsing picked out the correct stanza kind from the schema, which broke internal references. Removing this hack paves the way for allowing the schema to be configured or customized more easily.
author Kim Alvefur <zash@zash.se>
date Tue, 20 Dec 2022 21:48:28 +0100
parents 2ad35f08bd57
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3053
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 local st = require "util.stanza";
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 local omemo_namespace_prefix = "eu.siacs.conversations.axolotl."
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 module:hook("iq/bare/http://jabber.org/protocol/pubsub:pubsub", function (event)
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 local origin, stanza = event.origin, event.stanza;
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 local node = stanza.tags[1].tags[1].attr.node;
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 if node and node:sub(1, #omemo_namespace_prefix) == omemo_namespace_prefix then
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 origin.send(st.error_reply(stanza, "cancel", "item-not-found", "OMEMO is disabled"));
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 return true;
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 end
2ad35f08bd57 mod_deny_omemo: Prevents publishing and retreival of OMEMO PEP nodes
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 end, 10);