Mercurial > prosody-modules
diff mod_firewall/conditions.lib.lua @ 5792:14e17927c0ec
mod_firewall: Fix TO/FROM ROLE
These conditions did not match because get_jid_role() returns a role object.
We want to compare based on the name.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Mon, 11 Dec 2023 19:09:25 +0000 |
parents | ad5c77793750 |
children | e304e19536f2 |
line wrap: on
line diff
--- a/mod_firewall/conditions.lib.lua Mon Dec 11 12:10:43 2023 +0000 +++ b/mod_firewall/conditions.lib.lua Mon Dec 11 19:09:25 2023 +0000 @@ -205,11 +205,11 @@ end function condition_handlers.TO_ROLE(role_name) - return ("get_jid_role(bare_to, current_host) == %q"):format(role_name), { "get_jid_role", "current_host", "bare_to" }; + return ("get_jid_role(bare_to, current_host).name == %q"):format(role_name), { "get_jid_role", "current_host", "bare_to" }; end function condition_handlers.FROM_ROLE(role_name) - return ("get_jid_role(bare_from, current_host) == %q"):format(role_name), { "get_jid_role", "current_host", "bare_from" }; + return ("get_jid_role(bare_from, current_host).name == %q"):format(role_name), { "get_jid_role", "current_host", "bare_from" }; end local day_numbers = { sun = 0, mon = 2, tue = 3, wed = 4, thu = 5, fri = 6, sat = 7 };