# HG changeset patch # User Senko Rasic # Date 1197206804 -3600 # Node ID 2a892980f78b3b12653b28b9c89235d3887e08bd # Parent 010070018c04300ed262f31fe701acff6f96128c Enable compression in GNUTLS. (Patch by Robert McQueen) diff -r 010070018c04 -r 2a892980f78b loudmouth/lm-ssl-gnutls.c --- a/loudmouth/lm-ssl-gnutls.c Sun Dec 09 14:17:40 2007 +0100 +++ b/loudmouth/lm-ssl-gnutls.c Sun Dec 09 14:26:44 2007 +0100 @@ -23,6 +23,7 @@ #include #include +#include "lm-debug.h" #include "lm-error.h" #include "lm-ssl-base.h" #include "lm-ssl-internals.h" @@ -195,13 +196,17 @@ { int ret; gboolean auth_ok = TRUE; - const int cert_type_priority[2] = - { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP }; + const int cert_type_priority[] = + { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 }; + const int compression_priority[] = + { GNUTLS_COMP_DEFLATE, GNUTLS_COMP_NULL, 0 }; gnutls_init (&ssl->gnutls_session, GNUTLS_CLIENT); gnutls_set_default_priority (ssl->gnutls_session); gnutls_certificate_type_set_priority (ssl->gnutls_session, cert_type_priority); + gnutls_compression_set_priority (ssl->gnutls_session, + compression_priority); gnutls_credentials_set (ssl->gnutls_session, GNUTLS_CRD_CERTIFICATE, ssl->gnutls_xcred); @@ -233,6 +238,10 @@ return FALSE; } + lm_verbose ("GNUTLS negotiated compression: %s", + gnutls_compression_get_name (gnutls_compression_get + (ssl->gnutls_session))); + ssl->started = TRUE; return TRUE;