diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2020-09-29 06:11:30 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2020-09-29 06:11:30 +0200 |
commit | df58ee924f73a0b448f235d3aec043928eb16fd3 (patch) | |
tree | a13f129d9ef3343270ca1c68918b1593783ded3f /src | |
parent | log_rotate_date and log_rate_limit are deprecated since e4a8afb (#3382) (diff) |
mod_register: Allow for account-removal-only setup
Since commit de91618070473fdf2ecff30c722f0770acd1a912, it was no longer
possible to configure mod_register so that only account removal (i.e.,
no registration) is permitted. Revert to the previous behavior which
allows admins to freely configure account registration and removal via
separate access rules.
Diffstat (limited to 'src')
-rw-r--r-- | src/mod_register.erl | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/mod_register.erl b/src/mod_register.erl index 32dd2fc1c..432b8421a 100644 --- a/src/mod_register.erl +++ b/src/mod_register.erl @@ -114,13 +114,12 @@ process_iq(#iq{from = From, to = To} = IQ, Source) -> end, Server = To#jid.lserver, Access = mod_register_opt:access_remove(Server), - Remove = case acl:match_rule(Server, Access, From) of - deny -> deny; - allow when From#jid.lserver /= Server -> - deny; - allow -> - check_access(From#jid.luser, Server, Source) - end, + Remove = case {acl:match_rule(Server, Access, From), From#jid.lserver} of + {allow, Server} -> + allow; + {_, _} -> + deny + end, process_iq(IQ, Source, IsCaptchaEnabled, Remove == allow). process_iq(#iq{type = set, lang = Lang, @@ -636,10 +635,10 @@ mod_doc() -> [{access, #{value => ?T("AccessName"), desc => - ?T("Specify rules to restrict what usernames can be registered and " - "unregistered. If a rule returns 'deny' on the requested username, " - "registration and unregistration of that user name is denied. " - "There are no restrictions by default.")}}, + ?T("Specify rules to restrict what usernames can be registered. " + "If a rule returns 'deny' on the requested username, " + "registration of that user name is denied. There are no " + "restrictions by default.")}}, {access_from, #{value => ?T("AccessName"), desc => |