Mercurial > prosody-modules
annotate mod_deny_omemo/mod_deny_omemo.lua @ 3866:c0df50ce96f0
mod_rest: Handle internal http request errors early and then return
Skips over attempted parsing of the payload which usually failed since
the body is an error string like "connection refused", so this produced
useless errors.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 25 Jan 2020 20:22:12 +0100 |
parents | 2ad35f08bd57 |
children |
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); |