* src/ejabberd_auth.erl: Added check for domain of registered user

* src/web/ejabberd_web_admin.erl: Fixed user registration via web
interface, fixed path to user's offline messages (thanks to
Mickael Remond)

SVN Revision: 323
This commit is contained in:
Alexey Shchepin 2005-04-19 23:10:22 +00:00
parent d5b0b5c42b
commit fa479b6384
3 changed files with 22 additions and 4 deletions

View File

@ -1,5 +1,11 @@
2005-04-20 Alexey Shchepin <alexey@sevcom.net> 2005-04-20 Alexey Shchepin <alexey@sevcom.net>
* src/ejabberd_auth.erl: Added check for domain of registered user
* src/web/ejabberd_web_admin.erl: Fixed user registration via web
interface, fixed path to user's offline messages (thanks to
Mickael Remond)
* src/mod_disco.erl: Fixed domain listing when one virtual host is * src/mod_disco.erl: Fixed domain listing when one virtual host is
a subdomain of another a subdomain of another

View File

@ -26,6 +26,8 @@
plain_password_required/0 plain_password_required/0
]). ]).
-include("ejabberd.hrl").
%%%---------------------------------------------------------------------- %%%----------------------------------------------------------------------
%%% API %%% API
%%%---------------------------------------------------------------------- %%%----------------------------------------------------------------------
@ -45,7 +47,12 @@ set_password(User, Server, Password) ->
(auth_module()):set_password(User, Server, Password). (auth_module()):set_password(User, Server, Password).
try_register(User, Server, Password) -> try_register(User, Server, Password) ->
(auth_module()):try_register(User, Server, Password). case lists:member(jlib:nameprep(Server), ?MYHOSTS) of
true ->
(auth_module()):try_register(User, Server, Password);
false ->
{error, not_allowed}
end.
dirty_get_registered_users() -> dirty_get_registered_users() ->
(auth_module()):dirty_get_registered_users(). (auth_module()):dirty_get_registered_users().

View File

@ -1151,8 +1151,12 @@ list_users_parse_query(Query) ->
error -> error ->
error; error;
#jid{user = User, server = Server} -> #jid{user = User, server = Server} ->
ejabberd_auth:try_register(User, Server, Password), case ejabberd_auth:try_register(User, Server, Password) of
ok {error, _Reason} ->
error;
_ ->
ok
end
end; end;
false -> false ->
nothing nothing
@ -1180,7 +1184,8 @@ list_given_users(Users, Prefix, Lang) ->
fun(SU = {Server, User}) -> fun(SU = {Server, User}) ->
US = {User, Server}, US = {User, Server},
QueueLen = length(mnesia:dirty_read({offline_msg, US})), QueueLen = length(mnesia:dirty_read({offline_msg, US})),
FQueueLen = [?AC(Prefix ++ "user/" ++ User ++ "@" ++ Server ++ "/queue/", FQueueLen = [?AC(Prefix ++ "user/" ++
User ++ "@" ++ Server ++ "/queue/",
integer_to_list(QueueLen))], integer_to_list(QueueLen))],
FLast = FLast =
case ejabberd_sm:get_user_resources(User, Server) of case ejabberd_sm:get_user_resources(User, Server) of