Changeset 2b7d2d1


Ignore:
Timestamp:
2006-05-13T10:42:37Z (18 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
309cb9e
Parents:
fc2ee0f
Message:

Fixed GnuTLS support.

Location:
protocols
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • protocols/events.h

    rfc2ee0f r2b7d2d1  
    4949#define GAIM_ERR_COND   (G_IO_HUP | G_IO_ERR | G_IO_NVAL)
    5050
    51 #define event_debug( x... ) printf( x )
     51// #define event_debug( x... ) printf( x )
     52#define event_debug( x... )
    5253
    5354G_MODULE_EXPORT void b_main_init();
  • protocols/ssl_gnutls.c

    rfc2ee0f r2b7d2d1  
    4848};
    4949
    50 static void ssl_connected( gpointer data, gint source, b_input_condition cond );
     50static gboolean ssl_connected( gpointer data, gint source, b_input_condition cond );
    5151
    5252
     
    8181}
    8282
    83 static void ssl_handshake( gpointer data, gint source, b_input_condition cond );
    84 
    85 static void ssl_connected( gpointer data, gint source, b_input_condition cond )
     83static gboolean ssl_handshake( gpointer data, gint source, b_input_condition cond );
     84
     85static gboolean ssl_connected( gpointer data, gint source, b_input_condition cond )
    8686{
    8787        struct scd *conn = data;
     
    9696                g_free( conn );
    9797               
    98                 return;
     98                return FALSE;
    9999        }
    100100       
     
    102102        gnutls_transport_set_ptr( conn->session, (gnutls_transport_ptr) conn->fd );
    103103       
    104         ssl_handshake( data, source, cond );
    105 }
    106 
    107 static void ssl_handshake( gpointer data, gint source, b_input_condition cond )
     104        return ssl_handshake( data, source, cond );
     105}
     106
     107static gboolean ssl_handshake( gpointer data, gint source, b_input_condition cond )
    108108{
    109109        struct scd *conn = data;
    110110        int st;
    111111       
    112         if( conn->inpa != -1 )
    113         {
    114                 gaim_input_remove( conn->inpa );
    115                 conn->inpa = -1;
    116         }
    117        
    118112        if( ( st = gnutls_handshake( conn->session ) ) < 0 )
    119113        {
    120114                if( st == GNUTLS_E_AGAIN || st == GNUTLS_E_INTERRUPTED )
    121115                {
    122                         conn->inpa = gaim_input_add( conn->fd, ssl_getdirection( conn ),
    123                                                      ssl_handshake, data );
     116                        conn->inpa = b_input_add( conn->fd, ssl_getdirection( conn ),
     117                                                  ssl_handshake, data );
    124118                }
    125119                else
     
    142136                conn->func( conn->data, conn, cond );
    143137        }
     138       
     139        return FALSE;
    144140}
    145141
     
    187183       
    188184        if( conn->inpa != -1 )
    189                 gaim_input_remove( conn->inpa );
     185                b_event_remove( conn->inpa );
    190186       
    191187        if( conn->established )
Note: See TracChangeset for help on using the changeset viewer.