* src/ejabberd_listener.erl: More error detections

SVN Revision: 1884
This commit is contained in:
Badlop 2009-02-17 15:42:22 +00:00
parent e4a3cdb486
commit 74763be4dd
1 changed files with 7 additions and 13 deletions

View File

@ -59,7 +59,6 @@ start_listeners() ->
case start_listener(Port, Module, Opts) of case start_listener(Port, Module, Opts) of
{ok, _Pid} = R -> R; {ok, _Pid} = R -> R;
{error, Error} -> {error, Error} ->
?ERROR_MSG(Error, []),
throw(Error) throw(Error)
end end
end, Ls), end, Ls),
@ -129,7 +128,7 @@ init(PortIP, Module, Opts1) ->
end, end,
?ERROR_MSG("Failed to open socket:~n ~p~nReason: ~s", ?ERROR_MSG("Failed to open socket:~n ~p~nReason: ~s",
[{Port, Module, SockOpts}, ReasonT]), [{Port, Module, SockOpts}, ReasonT]),
throw(ReasonT) throw({Reason, PortIP})
end. end.
%% @spec (PortIP, Opts) -> {Port, IPT, IPS, IPV, OptsClean} %% @spec (PortIP, Opts) -> {Port, IPT, IPS, IPV, OptsClean}
@ -221,17 +220,12 @@ start_listener(Port, Module, Opts) ->
case start_listener2(Port, Module, Opts) of case start_listener2(Port, Module, Opts) of
{ok, _Pid} = R -> R; {ok, _Pid} = R -> R;
{error, {{'EXIT', {undef, _}}, _} = Error} -> {error, {{'EXIT', {undef, _}}, _} = Error} ->
EStr = io_lib:format( ?ERROR_MSG("Error starting the ejabberd listener: ~p.~n"
"Error starting the ejabberd listener: ~p.~n" "It could not be loaded or is not an ejabberd listener.~n"
"It could not be loaded or is not an ejabberd listener.~n" "Error: ~p~n", [Module, Error]),
"Error: ~p~n", [Module, Error]), {error, {module_not_available, Module}};
{error, lists:flatten(EStr)}; {error, {already_started, Pid}} ->
{error, {already_started, _Pid} = Error} -> {ok, Pid};
EStr = io_lib:format(
"Error starting the ejabberd listener: ~p.~n"
"A listener is already started in that port number and IP address:~n~p~n"
"Error: ~p~n", [Module, Port, Error]),
{error, lists:flatten(EStr)};
{error, Error} -> {error, Error} ->
{error, Error} {error, Error}
end. end.