Changeset 8a9afe4 for protocols


Ignore:
Timestamp:
2005-12-17T16:54:12Z (19 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
52b3a99
Parents:
3d64e5b (diff), dd9a51b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

http_client lib

Location:
protocols
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • protocols/Makefile

    r3d64e5b r8a9afe4  
    1010
    1111# [SH] Program variables
    12 objects = md5.o nogaim.o proxy.o sha.o util.o $(SSL_CLIENT)
     12objects = http_client.o md5.o nogaim.o proxy.o sha.o $(SSL_CLIENT) util.o
    1313
    1414# [SH] The next two lines should contain the directory name (in $(subdirs))
  • protocols/proxy.c

    r3d64e5b r8a9afe4  
    106106        if (condition & GAIM_WRITE_COND)
    107107                gaim_cond |= GAIM_INPUT_WRITE;
    108 //      if (condition & GAIM_ERR_COND)
    109 //              fprintf( stderr, "ERROR! fd=%d\n", g_io_channel_unix_get_fd( source ) );
    110108
    111109        closure->function(closure->data, g_io_channel_unix_get_fd(source), gaim_cond);
  • protocols/ssl_client.h

    r3d64e5b r8a9afe4  
    4040G_MODULE_EXPORT void ssl_disconnect( void *conn_ );
    4141G_MODULE_EXPORT int ssl_getfd( void *conn );
     42G_MODULE_EXPORT GaimInputCondition ssl_getdirection( void *conn );
  • protocols/ssl_gnutls.c

    r3d64e5b r8a9afe4  
    117117                if( st == GNUTLS_E_AGAIN || st == GNUTLS_E_INTERRUPTED )
    118118                {
    119                         conn->inpa = gaim_input_add( conn->fd,
    120                                                      gnutls_record_get_direction( conn->session ) ?
    121                                                          GAIM_INPUT_WRITE : GAIM_INPUT_READ,
     119                        conn->inpa = gaim_input_add( conn->fd, ssl_getdirection( conn ),
    122120                                                     ssl_handshake, data );
    123121                }
     
    145143int ssl_read( void *conn, char *buf, int len )
    146144{
     145        int st;
     146       
    147147        if( !((struct scd*)conn)->established )
    148148        {
     
    151151        }
    152152       
    153         return( gnutls_record_recv( ((struct scd*)conn)->session, buf, len ) );
    154        
     153        st = gnutls_record_recv( ((struct scd*)conn)->session, buf, len );
     154       
     155        ssl_errno = SSL_OK;
     156        if( st == GNUTLS_E_AGAIN || st == GNUTLS_E_INTERRUPTED )
     157                ssl_errno = SSL_AGAIN;
     158       
     159        return st;
    155160}
    156161
    157162int ssl_write( void *conn, const char *buf, int len )
    158163{
     164        int st;
     165       
    159166        if( !((struct scd*)conn)->established )
    160167        {
     
    163170        }
    164171       
    165         return( gnutls_record_send( ((struct scd*)conn)->session, buf, len ) );
     172        st = gnutls_record_send( ((struct scd*)conn)->session, buf, len );
     173       
     174        ssl_errno = SSL_OK;
     175        if( st == GNUTLS_E_AGAIN || st == GNUTLS_E_INTERRUPTED )
     176                ssl_errno = SSL_AGAIN;
     177       
     178        return st;
    166179}
    167180
     
    184197        return( ((struct scd*)conn)->fd );
    185198}
     199
     200GaimInputCondition ssl_getdirection( void *conn )
     201{
     202        return( gnutls_record_get_direction( ((struct scd*)conn)->session ) ?
     203                GAIM_INPUT_WRITE : GAIM_INPUT_READ );
     204}
Note: See TracChangeset for help on using the changeset viewer.