From 9c7a806d782ee4a3a8a49d2277c41f1513869dc5 Mon Sep 17 00:00:00 2001 From: ThomasV Date: Sun, 25 Nov 2012 03:04:05 +0400 Subject: [PATCH] catche exception on session creation --- transports/stratum_tcp.py | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/transports/stratum_tcp.py b/transports/stratum_tcp.py index c843f77..17c2b9a 100644 --- a/transports/stratum_tcp.py +++ b/transports/stratum_tcp.py @@ -22,7 +22,7 @@ class TcpSession(Session): self._connection = connection self.address = address[0] - self.name = "TCP" + self.name = "TCP" if not use_ssl else "TCP/SSL" def connection(self): if self.stopped(): @@ -140,7 +140,12 @@ class TcpServer(threading.Thread): sock.bind((self.host, self.port)) sock.listen(1) while not self.shared.stopped(): - session = TcpSession(*sock.accept(), use_ssl=self.use_ssl, ssl_certfile=self.ssl_certfile, ssl_keyfile=self.ssl_keyfile) + try: + session = TcpSession(*sock.accept(), use_ssl=self.use_ssl, ssl_certfile=self.ssl_certfile, ssl_keyfile=self.ssl_keyfile) + except BaseException, e: + error = str(e) + print_log("cannot start TCP session", error) + continue self.dispatcher.add_session(session) self.dispatcher.collect_garbage() client_req = TcpClientRequestor(self.dispatcher, session) -- 1.7.1