#1797 mod_firewall attempts to call global 'is_admin' a nill value.
Reporter
Diane Trout
Owner
Nobody
Created
Updated
Stars
★ (1)
Tags
Component-Community
Status-Fixed
Type-Defect
Priority-Medium
Diane Trout
on
What steps will reproduce the problem?
1. I upgraded the Debian bullseye backport packages from:
prosody 0.12.1-1~bpo11+1 to 0.12.2-1~bpo11+1
prosody-modules 0.0~hg20220613.59bedf167910+dfsg-1~bpo11+1 0.0~hg20230116.ca7feb293d55+dfsg-1~bpo11+1
2. I had mod_firewall enabled in prosody.cfg and on restart, I had these errors in the systemd journal.
c2sea5ba0: Traceback[c2s]: mod_firewall::deliver:23: attempt to call global 'is_admin' (a nil valu>
stack traceback:
mod_firewall::deliver:23: in function '?'
/usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
(...tail calls...)
/usr/lib/prosody/core/stanza_router.lua:188: in function 'core_post_stanza'
/usr/lib/prosody/core/stanza_router.lua:128: in function 'core_process_stanza'
/usr/lib/prosody/modules/mod_c2s.lua:326: in function 'func'
/usr/lib/prosody/util/async.lua:144: in function </usr/lib/prosody/util/async.lua:142>
I had to disable the firewall to get prosody to load correctly, but I would like the firewall available for antispam purposes.
It is running on an ancient i386 system, but I don't think that's important in this case.
Thanks
Diane Trout
What steps will reproduce the problem? 1. I upgraded the Debian bullseye backport packages from: prosody 0.12.1-1~bpo11+1 to 0.12.2-1~bpo11+1 prosody-modules 0.0~hg20220613.59bedf167910+dfsg-1~bpo11+1 0.0~hg20230116.ca7feb293d55+dfsg-1~bpo11+1 2. I had mod_firewall enabled in prosody.cfg and on restart, I had these errors in the systemd journal. c2sea5ba0: Traceback[c2s]: mod_firewall::deliver:23: attempt to call global 'is_admin' (a nil valu> stack traceback: mod_firewall::deliver:23: in function '?' /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77> (...tail calls...) /usr/lib/prosody/core/stanza_router.lua:188: in function 'core_post_stanza' /usr/lib/prosody/core/stanza_router.lua:128: in function 'core_process_stanza' /usr/lib/prosody/modules/mod_c2s.lua:326: in function 'func' /usr/lib/prosody/util/async.lua:144: in function </usr/lib/prosody/util/async.lua:142> I had to disable the firewall to get prosody to load correctly, but I would like the firewall available for antispam purposes. It is running on an ancient i386 system, but I don't think that's important in this case. Thanks Diane Trout
Theory: Backwards boolean logic in https://hg.prosody.im/prosody-modules/file/84997bc3f92e/mod_firewall/mod_firewall.lua#l187 should be the other way around. The new permissions stuff (in trunk) briefly removed is_admin, but brought it back with some "deprecated" warning.
ChangesFixed in https://hg.prosody.im/prosody-modules/rev/8474a3b80200 for now.
Changes