From cac96aa5f79a095a08731f7ab996293d31007ecf Mon Sep 17 00:00:00 2001 From: Valentin Lorentz Date: Thu, 21 Mar 2013 17:21:20 +0000 Subject: [PATCH] Socket: Fix race condition in SSL handshakes. --- src/drivers/Socket.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/drivers/Socket.py b/src/drivers/Socket.py index 521c62f4e..ee15baea6 100644 --- a/src/drivers/Socket.py +++ b/src/drivers/Socket.py @@ -278,14 +278,14 @@ class SocketDriver(drivers.IrcDriver, drivers.ServersMixin): # At least 10 seconds. self.conn.settimeout(max(10, conf.supybot.drivers.poll()*10)) try: + if getattr(conf.supybot.networks, self.irc.network).ssl(): + assert globals().has_key('ssl') + self.conn = ssl.wrap_socket(self.conn) self.conn.connect(server) def setTimeout(): self.conn.settimeout(conf.supybot.drivers.poll()) conf.supybot.drivers.poll.addCallback(setTimeout) setTimeout() - if getattr(conf.supybot.networks, self.irc.network).ssl(): - assert globals().has_key('ssl') - self.conn = ssl.wrap_socket(self.conn) self.connected = True self.resetDelay() except socket.error, e: