Index: libsoup/soup-gnutls.c =================================================================== --- libsoup/soup-gnutls.c (revision 1141) +++ libsoup/soup-gnutls.c (working copy) @@ -29,6 +29,8 @@ #include "soup-ssl.h" #include "soup-misc.h" +#include + /** * soup_ssl_supported: * @@ -45,7 +47,6 @@ typedef struct { GIOChannel channel; - int fd; GIOChannel *real_sock; gboolean non_blocking; gnutls_session session; @@ -279,7 +280,7 @@ { SoupGNUTLSChannel *chan = (SoupGNUTLSChannel *) channel; - return chan->real_sock->funcs->io_seek (channel, offset, type, err); + return chan->real_sock->funcs->io_seek (chan->real_sock, offset, type, err); } static GIOStatus @@ -296,7 +297,7 @@ } while (ret == GNUTLS_E_INTERRUPTED); } - return chan->real_sock->funcs->io_close (channel, err); + return chan->real_sock->funcs->io_close (chan->real_sock, err); } static GSource * @@ -305,7 +306,7 @@ { SoupGNUTLSChannel *chan = (SoupGNUTLSChannel *) channel; - return chan->real_sock->funcs->io_create_watch (channel, + return chan->real_sock->funcs->io_create_watch (chan->real_sock, condition); } @@ -326,7 +327,7 @@ { SoupGNUTLSChannel *chan = (SoupGNUTLSChannel *) channel; - return chan->real_sock->funcs->io_set_flags (channel, flags, err); + return chan->real_sock->funcs->io_set_flags (chan->real_sock, flags, err); } static GIOFlags @@ -334,7 +335,7 @@ { SoupGNUTLSChannel *chan = (SoupGNUTLSChannel *) channel; - return chan->real_sock->funcs->io_get_flags (channel); + return chan->real_sock->funcs->io_get_flags (chan->real_sock); } static const GIOFuncs soup_gnutls_channel_funcs = { @@ -421,7 +422,6 @@ gnutls_transport_set_ptr (session, GINT_TO_POINTER (sockfd)); chan = g_slice_new0 (SoupGNUTLSChannel); - chan->fd = sockfd; chan->real_sock = sock; chan->session = session; chan->creds = creds; @@ -449,6 +449,12 @@ #endif static void +mylog (int level, const char *str) +{ + fputs (str, stdout); +} + +static void soup_gnutls_init (void) { static volatile gsize inited_gnutls = 0; @@ -458,6 +464,10 @@ gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread); #endif gnutls_global_init (); + if (getenv ("LIBSOUP_GNUTLS_DEBUG")) { + gnutls_global_set_log_level (atoi (getenv ("LIBSOUP_GNUTLS_DEBUG"))); + gnutls_global_set_log_function (mylog); + } g_once_init_leave (&inited_gnutls, TRUE); } }