From ebea3cc3925d8589d50e13212319ab337cd3c1e9 Mon Sep 17 00:00:00 2001 From: terry-xiaoyu <506895667@qq.com> Date: Thu, 10 Oct 2019 19:27:35 +0800 Subject: [PATCH] Defend the ssl upgrade failure --- src/emqx_connection.erl | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/emqx_connection.erl b/src/emqx_connection.erl index e577fd2cc..186fbd2fe 100644 --- a/src/emqx_connection.erl +++ b/src/emqx_connection.erl @@ -150,7 +150,14 @@ call(CPid, Req) -> gen_statem:call(CPid, Req). %%-------------------------------------------------------------------- init({Transport, RawSocket, Options}) -> - {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]),