# HG changeset patch # User souliane # Date 1412669941 -7200 # Node ID 6b10442e89209362c1e3b60604e031596dd1736f # Parent 93a5e2673929ff85f2bfef6341a2098b9cd42249 plugin XEP-0115: trap "service-unavailable" error when retrieving disco infos diff -r 93a5e2673929 -r 6b10442e8920 src/plugins/plugin_xep_0115.py --- a/src/plugins/plugin_xep_0115.py Tue Oct 07 11:45:34 2014 +0200 +++ b/src/plugins/plugin_xep_0115.py Tue Oct 07 10:19:01 2014 +0200 @@ -150,7 +150,11 @@ self.host.memory.updateEntityData(from_jid, C.ENTITY_CAP_HASH, c_ver, self.profile) return - yield self.host.getDiscoInfos(from_jid, self.profile) + try: + yield self.host.getDiscoInfos(from_jid, self.profile) + except Exception, e: + log.error(_("Couldn't retrieve disco info for {jid}: {error}").format(jid=from_jid.full(), error=e.condition)) + return if c_hash != 'sha-1': #unknown hash method log.warning(_('Unknown hash method for entity capabilities: [%(hash_method)s] (entity: %(jid)s, node: %(node)s)') % {'hash_method':c_hash, 'jid': from_jid, 'node': c_node})