Bug in gnutls breaking Pidgin Jabber support

Simon Josefsson simon at josefsson.org
Tue Jun 16 10:03:30 CEST 2009


Jürgen Geuter <tante at monkeycode.org> writes:

> Hello.
>
> As described in http://bugs.gentoo.org/show_bug.cgi?id=273756
> gnutls-2.8.0 and gnutls-2.8.1 break Jabber support in the instant
> messenger Pidgin.
>
> The Jabber support always tries connecting securely in Jabber services
> which works flawlessly with gnutls-2.6.6. With 2.8.0 or 2.8.1 the client
> connects but the connection breaks down almost instantly. The error
> messages look like this:
>
> (21:19:23) jabber: Found bytestream proxy server: proxy.eu.jabber.org
> (21:19:23) jabber: Sending (ssl): <iq type='get' id='purpleb77e8230'
> to='proxy.eu.jabber.org'><query
> xmlns='http://jabber.org/protocol/bytestreams'/></iq>
> (21:19:23) jabber: xmlParseChunk returned warning 100
> (21:19:23) util: Writing file accounts.xml to directory /home/tante/.purple
> (21:19:23) util: Writing file /home/tante/.purple/accounts.xml
> (21:19:24) gnutls: receive failed: A TLS fatal alert has been received.
> (21:19:24) jabber: Disconnected: Input/output error
>
> Recompiling pidgin does not help, just downgrading gnutls.
>
> I'm posting this here since the Gentoo developer in charge of the
> package (Arfrever Frehtes Taifersar Arahesis) asked me to, if you need
> any extra information please ask and I'll try to supply the required
> information.

Hello and thanks for the report!  The BTS seems to be down now, so I
can't check for more details.

A complete gnutls debug log is needed.  A patch to pidgin could be added
to do this, what is needed is a call to

  gnutls_global_set_log_level (level);

to set a debug level and a call to

  gnutls_global_set_log_function (tls_log_func);

to set a debug logger, which has to have this prototype:

static void
tls_log_func (int level, const char *str)
{
  fprintf (stderr, "|<%d>| %s", level, str);
}

Perhaps better to print the messages to the pidgin error log.

/Simon





More information about the Gnutls-devel mailing list