Software /
code /
prosody-modules
Annotate
mod_saslname/mod_saslname.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 | 1271:e927d95512e8 |
rev | line source |
---|---|
1271
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 local hostname = module:get_option_string("sasl_hostname", module.host); |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 module:hook("stream-features", function(event) |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 local features = event.features; |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 local mechs = features:get_child("mechanisms", "urn:ietf:params:xml:ns:xmpp-sasl"); |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 if mechs then |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 mechs:tag("hostname", { xmlns = "urn:xmpp:domain-based-name:1" }) |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 :text(hostname):up(); |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 end |
e927d95512e8
mod_saslname: XEP-0233 implementation
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 end); |