From 4a06659912cf92f44dff746942705885ee3c3cd6 Mon Sep 17 00:00:00 2001
From: Yann Leboulanger <asterix@lagaule.org>
Date: Wed, 22 Oct 2008 19:59:14 +0000
Subject: [PATCH] try to connect to next type when connection is refused
 (server not listening on 5223)

---
 src/common/xmpp/transports_nb.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/common/xmpp/transports_nb.py b/src/common/xmpp/transports_nb.py
index 4f60b45180..55273f499b 100644
--- a/src/common/xmpp/transports_nb.py
+++ b/src/common/xmpp/transports_nb.py
@@ -472,7 +472,12 @@ class NonBlockingTcp(PlugIn, IdleObject):
 			return
 
 		if received is None:
-			if errnum != 0:
+			if self.state == 0 and errnum == errno.ECONNREFUSED:
+				# We tried to connect to a port that did't listen.
+				log.error("Connection to %s refused: %s [%d]", self.getName(), errtxt, errnum)
+				self.pollend(retry=True)
+				return
+			elif errnum != 0:
 				self.DEBUG(errtxt, 'error')
 				log.error("Connection to %s lost: %s [%d]", self.getName(), errtxt, errnum)
 				self._owner.disconnected()
-- 
GitLab