src/common/connection.py | 50 +++++++++++++++++++++++++++---------------------
1 file changed, 28 insertions(+), 22 deletions(-)
diff --git a/src/common/connection.py b/src/common/connection.py
index 8240652..6d3037a 100644
--- a/src/common/connection.py
+++ b/src/common/connection.py
@@ -1309,25 +1309,28 @@ class Connection(CommonConnection, ConnectionHandlers):
hostname = gajim.config.get_per('accounts', self.name, 'hostname')
self.connection = con
try:
- errnum = con.Connection.ssl_errnum
+ errnum = [con.Connection.ssl_errnum]
except AttributeError:
- errnum = -1 # we don't have an errnum
- if errnum > 0 and str(errnum) not in gajim.config.get_per('accounts',
- self.name, 'ignore_ssl_errors').split():
- text = _('The authenticity of the %s certificate could be invalid.'
- ) % hostname
- if errnum in ssl_error:
- text += _('\nSSL Error: %s') % ssl_error[errnum]
- else:
- text += _('\nUnknown SSL error: %d') % errnum
- gajim.nec.push_incoming_event(SSLErrorEvent(None, conn=self,
- error_text=text, error_num=errnum,
- cert=con.Connection.ssl_cert_pem,
- fingerprint=con.Connection.ssl_fingerprint_sha1,
- certificate=con.Connection.ssl_certificate))
- return True
+ errnum = [] # we don't have an errnum
+ i = 0
+ for er in errnum:
+ if er > 0 and str(er) not in gajim.config.get_per('accounts',
+ self.name, 'ignore_ssl_errors').split():
+ text = _('The authenticity of the %s certificate could be '
+ 'invalid.') % hostname
+ if er in ssl_error:
+ text += _('\nSSL Error: %s') % ssl_error[er]
+ else:
+ text += _('\nUnknown SSL error: %d') % er
+ gajim.nec.push_incoming_event(SSLErrorEvent(None, conn=self,
+ error_text=text, error_num=er,
+ cert=con.Connection.ssl_cert_pem[i],
+ fingerprint=con.Connection.ssl_fingerprint_sha1[i],
+ certificate=con.Connection.ssl_certificate[i]))
+ return True
+ i += 1
if hasattr(con.Connection, 'ssl_fingerprint_sha1'):
saved_fingerprint = gajim.config.get_per('accounts', self.name,
'ssl_fingerprint_sha1')
if saved_fingerprint:
# Check sha1 fingerprint