Software /
code /
prosody-modules
File
mod_muc_restrict_nick/mod_muc_restrict_nick.lua @ 4832:bfd4af4caddc
mod_password_policy: Support for additional policies provided by other modules
E.g. check a password contains an uppercase character:
module:provides("password-policy", {
name = "contains_uppercase";
check_password = function (password, policy)
return (policy ~= true) or (not not password:match("%u"));
end;
})
Config:
password_policy = {
contains_uppercase = true;
}
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Wed, 22 Dec 2021 14:48:46 +0000 |
parent | 4588:e7b126161e7b |
line wrap: on
line source
local jid = require "util.jid"; local st = require "util.stanza"; local nick_pattern = module:get_option_string("muc_restrict_nick_pattern", "^%w+$"); module:hook("muc-occupant-pre-join", function (event) local nick = jid.resource(event.occupant.nick); if not nick:match(nick_pattern) then local reply = st.error_reply(event.stanza, "modify", "policy-violation", "Unacceptable nickname, please try another"); module:send(reply); return true; end end);