PyOpenSSL making Gajim unresponsive
I have several account and sometimes I get a lot of errors about having an expired certificate, having the wrong finger print and whatnot (gmail is the one go throws more errors). A lot of times Gajim hangs and becomes unresponsive.
I was debugging trying to find out where exactly it hangs and it turns out that it hands while doing a ssl handshake.
## tls_nb.py
tcpsock._sslObj.setblocking(True)
try:
tcpsock._sslObj.do_handshake()
except:
log.error('Error while TLS handshake: ', exc_info=True)
return False
If I disable PyOpenSSL, everything runs fine. In fact, gajim appears to run faster. I want to know exactly what is causing this and why is it that this line is necessary: "tcpsock._sslObj.setblocking(True)"