Software /
code /
prosody-modules
File
mod_c2s_limit_sessions/mod_c2s_limit_sessions.lua @ 5283:cc89c97befe7
mod_http_admin_api: Tweak token session to please module:may()
module:may() checks for type == "c2s", but mod_tokenauth does not
currently include that or most common session properties.
Fixes a traceback resulting from a different code path where
module:may() tries to index event.stanza, which does not exist for http
events.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 28 Mar 2023 20:45:11 +0200 |
parent | 1366:f581210093a7 |
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 = hosts[module.host].sessions; module:hook("resource-bind", function(event) local session = event.session; if count(next, sessions[session.username].sessions) > max_resources then session:close{ condition = "policy-violation", text = "Too many resources" }; return false end end, -1);