changeset 2d6e5d6949e8 in /home/hg/repos/python-nbxmpp
details:http://hg.gajim.org/python-nbxmpp?cmd=changeset;node=2d6e5d6949e8 description: store only depth 0 certificate, and don't store fingerprint and pem. Fixes #11
diffstat:
nbxmpp/bosh.py | 6 ++---- nbxmpp/tls_nb.py | 8 +++----- nbxmpp/transports_nb.py | 6 ++---- 3 files changed, 7 insertions(+), 13 deletions(-)
diffs (50 lines):
diff -r e88ec6cb0884 -r 2d6e5d6949e8 nbxmpp/bosh.py --- a/nbxmpp/bosh.py Sat Nov 30 11:29:05 2013 +0100 +++ b/nbxmpp/bosh.py Fri Dec 06 21:19:37 2013 +0100 @@ -90,10 +90,8 @@ self.proxy_dict['credentials'] = self.proxy_creds
# ssl variables - self.ssl_fingerprint_sha1 = [] - self.ssl_certificate = [] - self.ssl_errnum = [] - self.ssl_cert_pem = [] + self.ssl_certificate = None + self.ssl_errnum = None
def connect(self, conn_5tuple, on_connect, on_connect_failure): diff -r e88ec6cb0884 -r 2d6e5d6949e8 nbxmpp/tls_nb.py --- a/nbxmpp/tls_nb.py Sat Nov 30 11:29:05 2013 +0100 +++ b/nbxmpp/tls_nb.py Fri Dec 06 21:19:37 2013 +0100 @@ -446,11 +446,9 @@ def _ssl_verify_callback(self, sslconn, cert, errnum, depth, ok): # Exceptions can't propagate up through this callback, so print them here. try: - self._owner.ssl_fingerprint_sha1.append(cert.digest('sha1')) - self._owner.ssl_certificate.append(cert) - self._owner.ssl_errnum.append(errnum) - self._owner.ssl_cert_pem.append(OpenSSL.crypto.dump_certificate( - OpenSSL.crypto.FILETYPE_PEM, cert)) + if depth == 0: + self._owner.ssl_certificate = cert + self._owner.ssl_errnum = errnum return True except: log.error("Exception caught in _ssl_info_callback:", exc_info=True) diff -r e88ec6cb0884 -r 2d6e5d6949e8 nbxmpp/transports_nb.py --- a/nbxmpp/transports_nb.py Sat Nov 30 11:29:05 2013 +0100 +++ b/nbxmpp/transports_nb.py Fri Dec 06 21:19:37 2013 +0100 @@ -313,10 +313,8 @@ self.on_remote_disconnect = self.disconnect
# ssl variables - self.ssl_fingerprint_sha1 = [] - self.ssl_certificate = [] - self.ssl_errnum = [] - self.ssl_cert_pem = [] + self.ssl_certificate = None + self.ssl_errnum = None
# FIXME: transport should not be aware xmpp def start_disconnect(self):