From dbea5df7dcb55d0e6f3168050012f7a226326d9e Mon Sep 17 00:00:00 2001 From: terry-xiaoyu <506895667@qq.com> Date: Tue, 8 Oct 2019 17:40:35 +0800 Subject: [PATCH] Defend the ssl upgrade failure --- src/emqx_channel.erl | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/emqx_channel.erl b/src/emqx_channel.erl index cb3794ef6..eaea6c7fd 100644 --- a/src/emqx_channel.erl +++ b/src/emqx_channel.erl @@ -149,7 +149,14 @@ call(CPid, Req) -> init({Transport, RawSocket, Options}) -> process_flag(trap_exit, true), - {ok, Socket} = Transport:wait(RawSocket), + case Transport:wait(RawSocket) of + {ok, Socket} -> + do_init(Transport, Socket, Options); + {error, Reason} -> + ?LOG(warning, "connection failed to establish: ~p", [Reason]) + end. + +do_init(Transport, Socket, Options) -> {ok, Peername} = Transport:ensure_ok_or_exit(peername, [Socket]), {ok, Sockname} = Transport:ensure_ok_or_exit(sockname, [Socket]), Peercert = Transport:ensure_ok_or_exit(peercert, [Socket]),