Problem in tlsschannel.cpp?
From: "Philippe Roger" <philippe@xxxxxxxxxxxxx>
Date: Fri, 18 Jan 2008 02:49:07 +0100 (CET)
Hi Jakob,

 

With gloox 0.9.7.1, on Windows (using SChannel), after a disconnection of
the network and re-establishment of the connection to the chat server, the
TLS handshake fails persistently, even though it worked fine the first time,
before the connection was broken.  I traced this to the SChannel data member
m_buffer, containing a residual "</stream:stream>" after the disconnection,
and which isn't purged in SChannel::cleanup(), preventing future handshakes.

 

Adding m_buffer = "";  in SChannel::cleanup() worked around the problem: at
least the system recovered after just one extra TLS handshake failure, which
ends up calling cleanup, which now cleans the buffer for the next time...

 

Thanks,

Philippe