From a03a9f376fe2fd1737ba7af6a87d99fe43a2a72e Mon Sep 17 00:00:00 2001 From: Wilmer van der Gaast Date: Sun, 18 Dec 2005 02:02:29 +0100 Subject: Non-blocking I/O for OpenSSL, plus some extra (important) cleanup code for GnuTLS. --- protocols/ssl_gnutls.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'protocols/ssl_gnutls.c') diff --git a/protocols/ssl_gnutls.c b/protocols/ssl_gnutls.c index 2e307aab..f2cb3e08 100644 --- a/protocols/ssl_gnutls.c +++ b/protocols/ssl_gnutls.c @@ -110,7 +110,10 @@ static void ssl_handshake( gpointer data, gint source, GaimInputCondition cond ) int st; if( conn->inpa != -1 ) + { gaim_input_remove( conn->inpa ); + conn->inpa = -1; + } if( ( st = gnutls_handshake( conn->session ) ) < 0 ) { @@ -182,6 +185,9 @@ void ssl_disconnect( void *conn_ ) { struct scd *conn = conn_; + if( conn->inpa != -1 ) + gaim_input_remove( conn->inpa ); + if( conn->established ) gnutls_bye( conn->session, GNUTLS_SHUT_WR ); -- cgit v1.2.3