aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2025-04-10 16:07:54 +0100
committerMatthew Wild <mwild1@gmail.com>2025-04-10 16:07:54 +0100
commite631062beb9a2a416b9f2c5df8127d0991a8742d (patch)
tree7cdb4060df6d0365d773be8e05f99b260e4a24b6
parent168ed96461c429710bc5b2380ce499f505a4ab2f (diff)
parentaa37a7085004b0b114c8e3c22447cfb826555562 (diff)
downloadprosody-e631062beb9a2a416b9f2c5df8127d0991a8742d.tar.gz
prosody-e631062beb9a2a416b9f2c5df8127d0991a8742d.zip
Merge 13.0->trunk
-rw-r--r--plugins/mod_invites_register.lua16
1 files changed, 14 insertions, 2 deletions
diff --git a/plugins/mod_invites_register.lua b/plugins/mod_invites_register.lua
index d9274ce4..76b644c7 100644
--- a/plugins/mod_invites_register.lua
+++ b/plugins/mod_invites_register.lua
@@ -101,8 +101,20 @@ module:hook("user-registering", function (event)
-- for this module to do...
return;
end
- if validated_invite and validated_invite.additional_data and validated_invite.additional_data.allow_reset then
- event.allow_reset = validated_invite.additional_data.allow_reset;
+ if validated_invite then
+ local username = validated_invite.username;
+ if username and username ~= event.username then
+ event.allowed = false;
+ event.reason = "The chosen username is not valid with this invitation";
+ end
+ local reset_username = validated_invite.additional_data and validated_invite.additional_data.allow_reset;
+ if reset_username then
+ if reset_username ~= event.username then
+ event.allowed = false;
+ event.reason = "Incorrect username for password reset";
+ end
+ event.allow_reset = reset_username;
+ end
end
end);