# HG changeset patch # User Kim Alvefur # Date 1536881486 -7200 # Node ID c3c0523a37c69ee9a5efe2682163d33c5e8337ba # Parent 412ff404bf58bc392a1e92c0414579290f1a97cf net.server_epoll: Catch errors from luasec.wrap It throws if given an invalid TLS context diff -r 412ff404bf58 -r c3c0523a37c6 net/server_epoll.lua --- a/net/server_epoll.lua Fri Sep 14 01:34:38 2018 +0200 +++ b/net/server_epoll.lua Fri Sep 14 01:31:26 2018 +0200 @@ -463,7 +463,11 @@ self._tls = true; log("debug", "Start TLS on %s now", self); self:del(); - local conn, err = luasec.wrap(self.conn, self.tls_ctx); + local ok, conn, err = pcall(luasec.wrap, self.conn, self.tls_ctx); + if not ok then + log("error", "Failed to initialize TLS: %s", conn); + conn, err = ok, conn; + end if not conn then self:on("disconnect", err); self:destroy();