Mercurial > prosody-modules
view mod_c2s_limit_sessions/mod_c2s_limit_sessions.lua @ 6511:fe8738747d91
mod_c2s_limit_sessions: Use pre-resource-bind for catching the condition early
We could technically also do this immediately after successful auth...?
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Tue, 07 Apr 2026 17:57:28 +0100 |
| parents | 317fb60e8cad |
| children | 668b1f0a4dc6 |
line wrap: on
line source
-- mod_c2s_limit_sessions local next, count = next, require "util.iterators".count; local max_resources = module:get_option_number("max_resources", 10); local sessions = prosody.hosts[module.host].sessions; module:hook("pre-resource-bind", function(event) local session = event.session; if count(next, sessions[session.username].sessions) >= max_resources then event.error = { condition = "policy-violation", text = "Too many active connections to this account" }; session:close(event.error); return false; end end, -1);
