aboutsummaryrefslogtreecommitdiff
path: root/src/ejabberd_auth_odbc.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/ejabberd_auth_odbc.erl')
-rw-r--r--src/ejabberd_auth_odbc.erl20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/ejabberd_auth_odbc.erl b/src/ejabberd_auth_odbc.erl
index e045e05c5..cc65aa053 100644
--- a/src/ejabberd_auth_odbc.erl
+++ b/src/ejabberd_auth_odbc.erl
@@ -18,7 +18,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,
@@ -122,6 +124,15 @@ get_vh_registered_users(Server) ->
[]
end.
+get_vh_registered_users(Server, Opts) ->
+ LServer = jlib:nameprep(Server),
+ case catch odbc_queries:list_users(LServer, Opts) of
+ {selected, ["username"], Res} ->
+ [{U, LServer} || {U} <- Res];
+ _ ->
+ []
+ end.
+
get_vh_registered_users_number(Server) ->
LServer = jlib:nameprep(Server),
case catch odbc_queries:users_number(LServer) of
@@ -131,6 +142,15 @@ get_vh_registered_users_number(Server) ->
0
end.
+get_vh_registered_users_number(Server, Opts) ->
+ LServer = jlib:nameprep(Server),
+ case catch odbc_queries:users_number(LServer, Opts) of
+ {selected, [_], [{Res}]} ->
+ list_to_integer(Res);
+ Other ->
+ 0
+ end.
+
get_password(User, Server) ->
case jlib:nodeprep(User) of
error ->