Software /
code /
prosody-modules
Annotate
mod_deny_omemo/mod_deny_omemo.lua @ 5425:3b30635d215c
mod_http_oauth2: Support granting zero role-scopes
It seems Very Bad that if you uncheck all roles on the consent page, you
get the default scopes, which seems the opposite of what you probably
intended. Currently, mod_tokenauth will do the same thing, so work is
needed there too to allow issuing tokens without roles.
A token without a role could be used for OIDC login, and not much else.
This seems like a valuable thing to support.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 07 May 2023 19:29:15 +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); |