aboutsummaryrefslogtreecommitdiff
path: root/src/ejabberd_auth.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/ejabberd_auth.erl')
-rw-r--r--src/ejabberd_auth.erl25
1 files changed, 8 insertions, 17 deletions
diff --git a/src/ejabberd_auth.erl b/src/ejabberd_auth.erl
index 0267a2192..6b7f537c0 100644
--- a/src/ejabberd_auth.erl
+++ b/src/ejabberd_auth.erl
@@ -136,7 +136,7 @@ check_password(User, AuthzId, Server, Password, Digest,
%% {true, AuthModule} | false
%% where
%% AuthModule = ejabberd_auth_anonymous | ejabberd_auth_external
-%% | ejabberd_auth_internal | ejabberd_auth_ldap
+%% | ejabberd_auth_mnesia | ejabberd_auth_ldap
%% | ejabberd_auth_sql | ejabberd_auth_pam | ejabberd_auth_riak
-spec check_password_with_authmodule(binary(), binary(), binary(), binary()) -> false |
{true, atom()}.
@@ -428,30 +428,21 @@ auth_modules() ->
%% Return the list of authenticated modules for a given host
auth_modules(Server) ->
LServer = jid:nameprep(Server),
- Default = case gen_mod:default_db(LServer) of
- mnesia -> internal;
- DBType -> DBType
- end,
+ Default = ejabberd_config:default_db(LServer, ?MODULE),
Methods = ejabberd_config:get_option(
- {auth_method, LServer},
- fun(V) when is_list(V) ->
- true = lists:all(fun is_atom/1, V),
- V;
- (V) when is_atom(V) ->
- [V]
- end, [Default]),
+ {auth_method, LServer}, opt_type(auth_method), [Default]),
[jlib:binary_to_atom(<<"ejabberd_auth_",
(jlib:atom_to_binary(M))/binary>>)
|| M <- Methods].
export(Server) ->
- ejabberd_auth_internal:export(Server).
+ ejabberd_auth_mnesia:export(Server).
import(Server) ->
- ejabberd_auth_internal:import(Server).
+ ejabberd_auth_mnesia:import(Server).
import(Server, mnesia, Passwd) ->
- ejabberd_auth_internal:import(Server, mnesia, Passwd);
+ ejabberd_auth_mnesia:import(Server, mnesia, Passwd);
import(Server, riak, Passwd) ->
ejabberd_auth_riak:import(Server, riak, Passwd);
import(_, _, _) ->
@@ -459,7 +450,7 @@ import(_, _, _) ->
opt_type(auth_method) ->
fun (V) when is_list(V) ->
- true = lists:all(fun is_atom/1, V), V;
- (V) when is_atom(V) -> [V]
+ lists:map(fun(M) -> ejabberd_config:v_db(?MODULE, M) end, V);
+ (V) -> [ejabberd_config:v_db(?MODULE, V)]
end;
opt_type(_) -> [auth_method].