diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-04-29 11:39:40 +0300 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-04-29 11:39:40 +0300 |
commit | b82b93f8f0c229e94a89469b0754bab0e28cd17c (patch) | |
tree | 56f5c7a25aa19254b4f30b1cf33fc34dcbadcbb7 /src/ejabberd_access_permissions.erl | |
parent | Don't re-define validation functions in multiple places (diff) |
Don't validate an option in ejabberd_config:get_option() functions
The commit introduces the following changes:
* Now there is no need to pass validating function in
ejabberd_config:get_option() functions, because the configuration
keeps already validated values.
* New function ejabberd_config:get_option/1 is introduced
* Function ejabberd_config:get_option/3 is deprecated. If the function
is still called, the second argument (validating function) is simply
ignored.
* The second argument for ejabberd_config:get_option/2 is now
a default value, not a validating function.
Diffstat (limited to 'src/ejabberd_access_permissions.erl')
-rw-r--r-- | src/ejabberd_access_permissions.erl | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/ejabberd_access_permissions.erl b/src/ejabberd_access_permissions.erl index 244b2c121..b27d17683 100644 --- a/src/ejabberd_access_permissions.erl +++ b/src/ejabberd_access_permissions.erl @@ -239,8 +239,7 @@ get_definitions(#state{definitions = none, fragments_generators = Gens} = State) [{acl,{acl,admin}}, {oauth,[<<"ejabberd:admin">>],[{acl,{acl,admin}}]}], {all, [start, stop]}}}], - ApiPerms = ejabberd_config:get_option(api_permissions, fun(A) -> A end, - DefaultOptions), + ApiPerms = ejabberd_config:get_option(api_permissions, DefaultOptions), AllCommands = ejabberd_commands:get_commands_definition(), Frags = lists:foldl( fun({_Name, Generator}, Acc) -> @@ -334,7 +333,7 @@ command_matches_patterns(C, [_ | Tail]) -> %%%=================================================================== parse_api_permissions(Data) when is_list(Data) -> - throw({replace_with, [parse_api_permission(Name, Args) || {Name, Args} <- Data]}). + [parse_api_permission(Name, Args) || {Name, Args} <- Data]. parse_api_permission(Name, Args0) -> Args = lists:flatten(Args0), @@ -374,8 +373,6 @@ parse_who(Name, Defs, ParseOauth) when is_list(Defs) -> throw:{invalid_syntax, Msg} -> report_error(<<"Invalid access rule: '~s' used inside 'who' section for api_permission '~s'">>, [Msg, Name]); - throw:{replace_with, NVal} -> - {access, NVal}; error:_ -> report_error(<<"Invalid access rule '~p' used inside 'who' section for api_permission '~s'">>, [Val, Name]) |