diff options
Diffstat (limited to 'src/ejabberd_auth.erl')
-rw-r--r-- | src/ejabberd_auth.erl | 21 |
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) -> |