annotate mod_deny_omemo/mod_deny_omemo.lua @ 5401:c8d04ac200fc

mod_http_oauth2: Reject loopback URIs as client_uri This really should be a proper website with info, https://localhost is not good enough. Ideally we'd validate that it's got proper DNS and is actually reachable, but triggering HTTP or even DNS lookups seems like it would carry abuse potential that would best to avoid.
author Kim Alvefur <zash@zash.se>
date Tue, 02 May 2023 16:20:55 +0200
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);