From fe48933d5f642d8813e5995b3166c1855917660d Mon Sep 17 00:00:00 2001
From: Yann Leboulanger <asterix@lagaule.org>
Date: Sat, 24 Apr 2010 12:31:19 +0200
Subject: [PATCH] fix BOSH connection over SSL. Fixes #5710

---
 src/common/xmpp/tls_nb.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/common/xmpp/tls_nb.py b/src/common/xmpp/tls_nb.py
index d6797e2496..1cbb99c579 100644
--- a/src/common/xmpp/tls_nb.py
+++ b/src/common/xmpp/tls_nb.py
@@ -349,8 +349,10 @@ class NonBlockingTLS(PlugIn):
     def _startSSL_pyOpenSSL(self):
         log.debug("_startSSL_pyOpenSSL called")
         tcpsock = self._owner
-        conn = tcpsock._owner._caller
-        if conn.client_cert and os.path.exists(conn.client_cert):
+        # NonBlockingHTTPBOSH instance has no attribute _owner
+        if hasattr(tcpsock, '_owner') and tcpsock._owner._caller.client_cert \
+        and os.path.exists(tcpsock._owner._caller.client_cert):
+            conn = tcpsock._owner._caller
             # FIXME make a checkbox for Client Cert / SSLv23 / TLSv1
             # If we are going to use a client cert/key pair for authentication,
             # we choose TLSv1 method.
-- 
GitLab