aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Chmielowski <pchmielowski@process-one.net>2018-03-21 12:53:46 +0100
committerPaweł Chmielowski <pchmielowski@process-one.net>2018-03-21 12:53:46 +0100
commit96c183c04b46d3f2dee352c4ff494609c95e2cfc (patch)
tree77867a9a43d38974887415a4bf9a87aa1fb5621d
parentAdd option --enable-group=xxx (thanks to andreabenini)(#1429) (diff)
Accept atoms in api_permission command lists and commands with numbers in them
-rw-r--r--src/ejabberd_access_permissions.erl6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/ejabberd_access_permissions.erl b/src/ejabberd_access_permissions.erl
index a863e1557..3a7f81d53 100644
--- a/src/ejabberd_access_permissions.erl
+++ b/src/ejabberd_access_permissions.erl
@@ -492,6 +492,8 @@ parse_single_what(Binary) when is_binary(Binary) ->
_ ->
{error, <<"Invalid value">>}
end;
+parse_single_what(Atom) when is_atom(Atom) ->
+ parse_single_what(atom_to_binary(Atom, latin1));
parse_single_what(_) ->
{error, <<"Invalid value">>}.
@@ -502,7 +504,9 @@ is_valid_command_name(Val) ->
is_valid_command_name2(<<>>) ->
true;
-is_valid_command_name2(<<K:8, Rest/binary>>) when K >= $a andalso K =< $z orelse K == $_ ->
+is_valid_command_name2(<<K:8, Rest/binary>>) when (K >= $a andalso K =< $z)
+ orelse (K >= $0 andalso K =< $9)
+ orelse K == $_ ->
is_valid_command_name2(Rest);
is_valid_command_name2(_) ->
false.