summaryrefslogtreecommitdiff
path: root/src/ejabberd_auth.erl
diff options
context:
space:
mode:
authorMickaël Rémond <mickael.remond@process-one.net>2008-02-19 13:49:29 +0000
committerMickaël Rémond <mickael.remond@process-one.net>2008-02-19 13:49:29 +0000
commit6e3ac3a5a00e5d515350a0089e96e7839f3914d8 (patch)
treed8e8df5277a711c2ca47350cb9448674e882c954 /src/ejabberd_auth.erl
parentBug in get_conn_type since SVN r1194 crashes http-bind and http-poll (thanks ... (diff)
* src/ejabberd_config.erl: dirty_get_registered_users now correctly returns all users for all vhosts no matter which back-end is used (EJAB-527)
* src/ejabberd_auth_odbc.erl: Likewise * src/ejabberd_auth_internal.erl: Likewise * src/ejabberd_auth.erl: Likewise * src/ejabberd_auth_external.erl: Likewise * src/ejabberd_auth_ldap.erl: Likewise SVN Revision: 1198
Diffstat (limited to 'src/ejabberd_auth.erl')
-rw-r--r--src/ejabberd_auth.erl13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/ejabberd_auth.erl b/src/ejabberd_auth.erl
index 62282957..1ce6cbb7 100644
--- a/src/ejabberd_auth.erl
+++ b/src/ejabberd_auth.erl
@@ -122,7 +122,7 @@ dirty_get_registered_users() ->
lists:flatmap(
fun(M) ->
M:dirty_get_registered_users()
- end, auth_modules(?MYNAME)).
+ end, auth_modules()).
%% Registered users list do not include anonymous users logged
get_vh_registered_users(Server) ->
@@ -207,7 +207,6 @@ remove_user(User, Server, Password) ->
M:remove_user(User, Server, Password)
end, auth_modules(Server)).
-
ctl_process_get_registered(_Val, Host, ["registered-users"]) ->
Users = ejabberd_auth:get_vh_registered_users(Host),
NewLine = io_lib:format("~n", []),
@@ -221,6 +220,16 @@ ctl_process_get_registered(Val, _Host, _Args) ->
%%%----------------------------------------------------------------------
%%% Internal functions
%%%----------------------------------------------------------------------
+%% Return the lists of all the auth modules actually used in the
+%% configuration
+auth_modules() ->
+ lists:usort(
+ lists:flatmap(
+ fun(Server) ->
+ auth_modules(Server)
+ end, ?MYHOSTS)).
+
+%% Return the list of authenticated modules for a given host
auth_modules(Server) ->
LServer = jlib:nameprep(Server),
Method = ejabberd_config:get_local_option({auth_method, LServer}),