diff options
author | Badlop <badlop@process-one.net> | 2010-01-16 12:24:11 +0000 |
---|---|---|
committer | Badlop <badlop@process-one.net> | 2010-01-16 12:24:11 +0000 |
commit | 86794b1d23ce9a3b67cad8ed8c9d01eaecfe8ec6 (patch) | |
tree | 57e51652e21e8727a81f56094eba906553db9d41 | |
parent | Improve functions calls when closing client connection. (diff) |
Fix OTP version detection to work with old supported R10 and R11
SVN Revision: 2906
-rw-r--r-- | src/ejabberd_listener.erl | 10 | ||||
-rw-r--r-- | src/ejabberd_s2s_out.erl | 10 |
2 files changed, 12 insertions, 8 deletions
diff --git a/src/ejabberd_listener.erl b/src/ejabberd_listener.erl index 4888fd495..a179dfda4 100644 --- a/src/ejabberd_listener.erl +++ b/src/ejabberd_listener.erl @@ -128,10 +128,12 @@ init_udp(PortIP, Module, Opts, SockOpts, Port, IPS) -> end. init_tcp(PortIP, Module, Opts, SockOpts, Port, IPS) -> - SockOpts2 = case erlang:system_info(otp_release) >= "R13B" of - true -> [{send_timeout_close, true} | SockOpts]; - false -> SockOpts - end, + SockOpts2 = try erlang:system_info(otp_release) >= "R13B" of + true -> [{send_timeout_close, true} | SockOpts]; + false -> SockOpts + catch + _:_ -> [] + end, Res = gen_tcp:listen(Port, [binary, {packet, 0}, {active, false}, diff --git a/src/ejabberd_s2s_out.erl b/src/ejabberd_s2s_out.erl index d36d14905..073c79962 100644 --- a/src/ejabberd_s2s_out.erl +++ b/src/ejabberd_s2s_out.erl @@ -265,10 +265,12 @@ open_socket1(Host, Port) -> open_socket2(Type, Addr, Port) -> ?DEBUG("s2s_out: connecting to ~p:~p~n", [Addr, Port]), Timeout = outgoing_s2s_timeout(), - SockOpts = case erlang:system_info(otp_release) >= "R13B" of - true -> [{send_timeout_close, true}]; - false -> [] - end, + SockOpts = try erlang:system_info(otp_release) >= "R13B" of + true -> [{send_timeout_close, true}]; + false -> [] + catch + _:_ -> [] + end, case (catch ejabberd_socket:connect(Addr, Port, [binary, {packet, 0}, {send_timeout, ?TCP_SEND_TIMEOUT}, |