summaryrefslogtreecommitdiff
path: root/sleekxmpp/clientxmpp.py
diff options
context:
space:
mode:
Diffstat (limited to 'sleekxmpp/clientxmpp.py')
-rw-r--r--sleekxmpp/clientxmpp.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/sleekxmpp/clientxmpp.py b/sleekxmpp/clientxmpp.py
index 170b35f0..004037f2 100644
--- a/sleekxmpp/clientxmpp.py
+++ b/sleekxmpp/clientxmpp.py
@@ -143,7 +143,7 @@ class ClientXMPP(BaseXMPP):
def get_dns_records(self, domain, port=None):
"""
Get the DNS records for a domain.
- Overridden XMLStream.get_dns_records to use SRV.
+ Overriddes XMLStream.get_dns_records to use SRV.
Arguments:
domain -- The domain in question.
@@ -153,16 +153,22 @@ class ClientXMPP(BaseXMPP):
port = self.default_port
if DNSPYTHON:
try:
- answers = [((answer.target.to_text()[:-1], answer.port), answer.priority, answer.weight) for answer in dns.resolver.query("_xmpp-client._tcp.%s" % domain, dns.rdatatype.SRV)]
+ record = "_xmpp-client._tcp.%s" % domain
+ answers = []
+ for answer in dns.resolver.query(record, dns.rdatatype.SRV):
+ address = (answer.target.to_text()[:-1], answer.port)
+ answers.append((address, answer.priority, answer.weight))
except (dns.resolver.NXDOMAIN, dns.resolver.NoAnswer):
log.warning("No SRV records for %s" % domain)
answers = super(ClientXMPP, self).get_dns_records(domain, port)
except dns.exception.Timeout:
- log.warning("DNS resolution timed out for SRV record of %s" % domain)
+ log.warning("DNS resolution timed out " + \
+ "for SRV record of %s" % domain)
answers = super(ClientXMPP, self).get_dns_records(domain, port)
return answers
else:
- log.warning("dnspython is not installed -- relying on OS A record resolution")
+ log.warning("dnspython is not installed -- " + \
+ "relying on OS A record resolution")
return [((domain, port), 0, 0)]
def register_feature(self, name, handler, restart=False, order=5000):