It appears that a newer version of libsoup or gnutls set the default client required prime number minimum to be higher then what the gtalk/gmail servers are configured to give out. This causes the connection to fail with a GNUTLS_E_DH_PRIME_UNACCEPTABLE error. net-voip/telepathy-gabble should specify to libsoup or gnutls that it requires a lower prime number then the default. bz #456250 gets around the problem by switch to OpenSSL where telepathy-gabble either specifies this or the default in OpenSSL is lower. Reproducible: Always Steps to Reproduce: 1. Update to the latest on ~amd64(sorry don't recall which version this happened on) 2. Try to connect to gtalk wocky/-DEBUG: 02/10/2013 05:37:25.837920: handle_stream_open: wocky-xmpp-reader.c:435: Received stream opening: stream, prefix: stream, uri: http://etherx.jabber.org/streams wocky/-DEBUG: 02/10/2013 05:37:25.837958: handle_stream_open: wocky-xmpp-reader.c:454: Stream opening attribute: from = 'gmail.com' (prefix: <no prefix>, uri: <no uri>) wocky/-DEBUG: 02/10/2013 05:37:25.837976: handle_stream_open: wocky-xmpp-reader.c:454: Stream opening attribute: id = '56DA3A76A0CE4524' (prefix: <no prefix>, uri: <no uri>) wocky/-DEBUG: 02/10/2013 05:37:25.837996: handle_stream_open: wocky-xmpp-reader.c:454: Stream opening attribute: version = '1.0' (prefix: <no prefix>, uri: <no uri>) wocky/-DEBUG: 02/10/2013 05:37:25.838103: _end_element_ns: Received stanza * features xmlns='http://etherx.jabber.org/streams' * starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls' * required * mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl' * mechanism "X-GOOGLE-TOKEN" * mechanism "X-OAUTH2" wocky/-DEBUG: 02/10/2013 05:37:25.838165: _write_node_tree: Serializing tree: * starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls' wocky/-DEBUG: 02/10/2013 05:37:25.846549: _end_element_ns: Received stanza * proceed xmlns='urn:ietf:params:xml:ns:xmpp-tls' gabbleconnection-DEBUG: 02/10/2013 05:37:25.898900: connector_error_disconnect (connection.c:1772): connection failed: WOCKY_CONNECTOR_ERROR_TLS_SESSION_FAILED (#7): TLS handshake error: -63: GNUTLS_E_DH_PRIME_UNACCEPTABLE gabbleroster-DEBUG: 02/10/2013 05:37:25.898994: gabble_roster_close_all (roster.c:1692): closing channels gabblemuc-DEBUG: 02/10/2013 05:37:25.899022: connection_status_changed_cb (roomlist-manager.c:192): disconnected, closing room lists gabblemuc-DEBUG: 02/10/2013 05:37:25.899039: gabble_roomlist_manager_close_all (roomlist-manager.c:86): 0x234dec0 gabblesearch-DEBUG: 02/10/2013 05:37:25.899059: gabble_search_manager_close_all (search-manager.c:100): closing channels gabbleauthentication-DEBUG: 02/10/2013 05:37:25.899080: gabble_auth_manager_close_all (auth-manager.c:89): called gabbletls-DEBUG: 02/10/2013 05:37:25.899099: connection_status_changed_cb (server-tls-manager.c:146): Connection status changed, now 2 gabblemuc-DEBUG: 02/10/2013 05:37:25.899130: gabble_muc_factory_close_all (muc-factory.c:890): closing channels gabbletubes-DEBUG: 02/10/2013 05:37:25.899158: gabble_private_tubes_factory_close_all (private-tubes-factory.c:377): closing 1-1 tubes channels gabblemedia-channel-DEBUG: 02/10/2013 05:37:25.899178: gabble_media_factory_close_all (media-factory.c:424): closing channels gabbleconnection-DEBUG: 02/10/2013 05:37:25.899216: connection_shut_down (connection.c:2361): neither porter nor connector is alive: clean up the base connection gabbleconnection-DEBUG: 02/10/2013 05:37:25.899750: gabble_connection_dispose (connection.c:1268): called gabblebytestream-DEBUG: 02/10/2013 05:37:25.899776: gabble_bytestream_factory_dispose (bytestream-factory.c:681): dispose called gabblejid-DEBUG: 02/10/2013 05:37:25.899801: user_data_destroyed_cb (util.c:645): user_data for 0x234cd60 destroyed; disconnecting gabblejid-DEBUG: 02/10/2013 05:37:25.899821: user_data_destroyed_cb (util.c:645): user_data for 0x237c800 destroyed; disconnecting gabbledisco-DEBUG: 02/10/2013 05:37:25.899840: gabble_disco_dispose (disco.c:227): dispose called gabblejid-DEBUG: 02/10/2013 05:37:25.899857: instance_destroyed_cb (util.c:632): instance for 0x7f52480014a0 destroyed; cleaning up gabblejid-DEBUG: 02/10/2013 05:37:25.899876: instance_destroyed_cb (util.c:632): instance for 0x23c0180 destroyed; cleaning up gabbledisco-DEBUG: 02/10/2013 05:37:25.899893: gabble_disco_finalize (disco.c:254): called with 0x234df40 gabblepipeline-DEBUG: 02/10/2013 05:37:25.899910: gabble_request_pipeline_dispose (request-pipeline.c:275): disposing request-pipeline gabblevcard-DEBUG: 02/10/2013 05:37:25.899931: gabble_vcard_manager_dispose (vcard-manager.c:613): 0x2385070 gabblevcard-DEBUG: 02/10/2013 05:37:25.899954: gabble_vcard_manager_finalize (vcard-manager.c:644): 0x2385070 gabblepresence-DEBUG: 02/10/2013 05:37:25.899981: gabble_presence_cache_dispose (presence-cache.c:592): dispose called gabblepresence-DEBUG: 02/10/2013 05:37:25.900027: gabble_presence_cache_finalize (presence-cache.c:623): called with 0x2396020 gabbleroster-DEBUG: 02/10/2013 05:37:25.900069: gabble_roster_dispose (roster.c:201): dispose called gabbleroster-DEBUG: 02/10/2013 05:37:25.900089: gabble_roster_close_all (roster.c:1692): closing channels gabbleroster-DEBUG: 02/10/2013 05:37:25.900109: gabble_roster_finalize (roster.c:233): called with 0x238d040 gabbleim-DEBUG: 02/10/2013 05:37:25.900131: gabble_im_factory_dispose (im-factory.c:121): dispose called gabblemuc-DEBUG: 02/10/2013 05:37:25.900152: gabble_roomlist_manager_dispose (roomlist-manager.c:128): running gabblemuc-DEBUG: 02/10/2013 05:37:25.900170: gabble_roomlist_manager_close_all (roomlist-manager.c:86): 0x234dec0 gabblesearch-DEBUG: 02/10/2013 05:37:25.900188: gabble_search_manager_dispose (search-manager.c:214): dispose called gabblesearch-DEBUG: 02/10/2013 05:37:25.900206: gabble_search_manager_close_all (search-manager.c:100): closing channels gabblejid-DEBUG: 02/10/2013 05:37:25.900224: user_data_destroyed_cb (util.c:645): user_data for 0x237c8c0 destroyed; disconnecting gabblemuc-DEBUG: 02/10/2013 05:37:25.900243: gabble_muc_factory_dispose (muc-factory.c:154): dispose called gabblemuc-DEBUG: 02/10/2013 05:37:25.900260: gabble_muc_factory_close_all (muc-factory.c:890): closing channels gabbletubes-DEBUG: 02/10/2013 05:37:25.900280: gabble_private_tubes_factory_dispose (private-tubes-factory.c:198): dispose called gabbletubes-DEBUG: 02/10/2013 05:37:25.900298: gabble_private_tubes_factory_close_all (private-tubes-factory.c:377): closing 1-1 tubes channels gabblemedia-channel-DEBUG: 02/10/2013 05:37:25.900317: gabble_media_factory_dispose (media-factory.c:159): dispose called gabblemedia-channel-DEBUG: 02/10/2013 05:37:25.900335: gabble_media_factory_close_all (media-factory.c:424): closing channels gabblejid-DEBUG: 02/10/2013 05:37:25.900372: instance_destroyed_cb (util.c:632): instance for 0x234cd80 destroyed; cleaning up gabblejid-DEBUG: 02/10/2013 05:37:25.900391: instance_destroyed_cb (util.c:632): instance for 0x237c860 destroyed; cleaning up gabbleconnection-DEBUG: 02/10/2013 05:37:25.900408: gabble_connection_finalize (connection.c:1345): called with 0x2388010 gabblepresence-DEBUG: 02/10/2013 05:37:25.900443: gabble_capabilities_finalize (capabilities.c:338): 0x2388010 gabbleauthentication-DEBUG: 02/10/2013 05:37:25.900506: gabble_auth_manager_dispose (auth-manager.c:158): dispose called gabbleauthentication-DEBUG: 02/10/2013 05:37:25.900526: gabble_auth_manager_close_all (auth-manager.c:89): called gabbletls-DEBUG: 02/10/2013 05:37:25.901751: gabble_server_tls_manager_dispose (server-tls-manager.c:415): 0x2356240 gabbletls-DEBUG: 02/10/2013 05:37:25.901793: gabble_server_tls_manager_finalize (server-tls-manager.c:433): 0x2356240
Reported upstream at https://bugzilla.gnome.org/show_bug.cgi?id=693514
Will follow on upstream bugzilla.
More, it's invalid. This is a bug in GnuTLS, which is fixed in 3.1.8.