Software /
code /
prosody-modules
Annotate
mod_deny_omemo/mod_deny_omemo.lua @ 5557:d7667d9ad96a
mod_rest: Include full_jid property on origin
Fixes permission check in disco#info query to your own account, where
the 'to' would have been stripped since it equals the account JID,
leaving mod_disco passing nil, which triggers an error in module:may()
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 18 Jun 2023 22:23:24 +0200 |
parent | 3053:2ad35f08bd57 |
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); |