Changeset

13097:6771acb8e857

mod_adhoc: Silence permission errors when listing commands Since throwing a pile of 'access denied', even at debug level, seems akin to calling wolf :) Cutting down on debug noise is also good. Passing a flag instead of using module:could seemed easier here.
author Kim Alvefur <zash@zash.se>
date Sun, 07 May 2023 13:13:42 +0200
parents 13096:9638ff8b1c81
children 13098:65d2ff6e674e
files plugins/adhoc/mod_adhoc.lua
diffstat 1 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/adhoc/mod_adhoc.lua	Sun May 07 12:52:31 2023 +0200
+++ b/plugins/adhoc/mod_adhoc.lua	Sun May 07 13:13:42 2023 +0200
@@ -14,8 +14,8 @@
 
 module:add_feature(xmlns_cmd);
 
-local function check_permissions(event, node, command)
-	return (command.permission == "check" and module:may("adhoc:"..node, event))
+local function check_permissions(event, node, command, execute)
+	return (command.permission == "check" and module:may("adhoc:"..node, event, not execute))
 	    or (command.permission == "local_user" and jid_host(event.stanza.attr.from) == module.host)
 	    or (command.permission == "any");
 end
@@ -62,7 +62,7 @@
 	local node = stanza.tags[1].attr.node
 	local command = commands[node];
 	if command then
-		if not check_permissions(event, node, command) then
+		if not check_permissions(event, node, command, true) then
 			origin.send(st.error_reply(stanza, "auth", "forbidden", "You don't have permission to execute this command"):up()
 				:add_child(command:cmdtag("canceled")
 				:tag("note", {type="error"}):text("You don't have permission to execute this command")));