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.erl21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/ejabberd_auth.erl b/src/ejabberd_auth.erl
index 6ecd054d1..d62cf333f 100644
--- a/src/ejabberd_auth.erl
+++ b/src/ejabberd_auth.erl
@@ -22,7 +22,9 @@
try_register/3,
dirty_get_registered_users/0,
get_vh_registered_users/1,
+ get_vh_registered_users/2,
get_vh_registered_users_number/1,
+ get_vh_registered_users_number/2,
get_password/2,
get_password_s/2,
is_user_exists/2,
@@ -108,6 +110,12 @@ get_vh_registered_users(Server) ->
M:get_vh_registered_users(Server)
end, auth_modules(Server)).
+get_vh_registered_users(Server, Opts) ->
+ lists:flatmap(
+ fun(M) ->
+ M:get_vh_registered_users(Server, Opts)
+ end, auth_modules(Server)).
+
get_vh_registered_users_number(Server) ->
lists:sum(
lists:map(
@@ -121,6 +129,19 @@ get_vh_registered_users_number(Server) ->
end
end, auth_modules(Server))).
+get_vh_registered_users_number(Server, Opts) ->
+ lists:sum(
+ lists:map(
+ fun(M) ->
+ case erlang:function_exported(
+ M, get_vh_registered_users_number, 2) of
+ true ->
+ M:get_vh_registered_users_number(Server, Opts);
+ false ->
+ length(M:get_vh_registered_users(Server))
+ end
+ end, auth_modules(Server))).
+
get_password(User, Server) ->
lists:foldl(
fun(M, false) ->