Mercurial > prosody-modules
view mod_firewall/marks.lib.lua @ 5086:dec4b2e31d1c
mod_rest: Do not allow replies to <iq type=result> from webhooks
Replying to a result stanza could cause loops, just as replying to an
error.
No stanza.name check here but it should be fine since no other kinds of
stanzas have type=result, and the boolean logic would most definitely be
wrong on the first attempt.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sun, 27 Nov 2022 00:10:38 +0100 |
| parents | 165d2877eeac |
| children | 96dec7681af8 |
line wrap: on
line source
local mark_storage = module:open_store("firewall_marks"); local user_sessions = prosody.hosts[module.host].sessions; module:hook("resource-bind", function (event) local session = event.session; local username = session.username; local user = user_sessions[username]; local marks = user.firewall_marks; if not marks then marks = mark_storage:get(username) or {}; user.firewall_marks = marks; -- luacheck: ignore 122 end session.firewall_marks = marks; end); module:hook("resource-unbind", function (event) local session = event.session; local username = session.username; local marks = session.firewall_marks; mark_storage:set(username, marks); end);
