Mercurial > prosody-hg
comparison plugins/adhoc/mod_adhoc.lua @ 10565:421b2f8369fd
mod_adhoc: Improve permission setting (fix #1482) BC
Rename 'user' permission mode to 'any' for clarity, too easily mistaken
for what the 'local_user' setting does.
It is also removed as a default and made a required argument.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Fri, 20 Dec 2019 22:47:34 +0100 |
| parents | f1886a48a6d4 |
| children | f6661fac7e9a |
comparison
equal
deleted
inserted
replaced
| 10564:3098eac31139 | 10565:421b2f8369fd |
|---|---|
| 24 local hostname = jid_host(from); | 24 local hostname = jid_host(from); |
| 25 local command = commands[node]; | 25 local command = commands[node]; |
| 26 if (command.permission == "admin" and privileged) | 26 if (command.permission == "admin" and privileged) |
| 27 or (command.permission == "global_admin" and global_admin) | 27 or (command.permission == "global_admin" and global_admin) |
| 28 or (command.permission == "local_user" and hostname == module.host) | 28 or (command.permission == "local_user" and hostname == module.host) |
| 29 or (command.permission == "user") then | 29 or (command.permission == "any") then |
| 30 reply:tag("identity", { name = command.name, | 30 reply:tag("identity", { name = command.name, |
| 31 category = "automation", type = "command-node" }):up(); | 31 category = "automation", type = "command-node" }):up(); |
| 32 reply:tag("feature", { var = xmlns_cmd }):up(); | 32 reply:tag("feature", { var = xmlns_cmd }):up(); |
| 33 reply:tag("feature", { var = "jabber:x:data" }):up(); | 33 reply:tag("feature", { var = "jabber:x:data" }):up(); |
| 34 event.exists = true; | 34 event.exists = true; |
| 55 local hostname = jid_host(from); | 55 local hostname = jid_host(from); |
| 56 for node, command in it.sorted_pairs(commands) do | 56 for node, command in it.sorted_pairs(commands) do |
| 57 if (command.permission == "admin" and admin) | 57 if (command.permission == "admin" and admin) |
| 58 or (command.permission == "global_admin" and global_admin) | 58 or (command.permission == "global_admin" and global_admin) |
| 59 or (command.permission == "local_user" and hostname == module.host) | 59 or (command.permission == "local_user" and hostname == module.host) |
| 60 or (command.permission == "user") then | 60 or (command.permission == "any") then |
| 61 reply:tag("item", { name = command.name, | 61 reply:tag("item", { name = command.name, |
| 62 node = node, jid = module:get_host() }); | 62 node = node, jid = module:get_host() }); |
| 63 reply:up(); | 63 reply:up(); |
| 64 end | 64 end |
| 65 end | 65 end |
