summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Spacek <pspacek@redhat.com>2015-03-27 15:51:24 +0100
committerPetr Viktorin <pviktori@redhat.com>2015-05-21 14:25:41 +0200
commit3a26c39c97c10db22f627c5761d9fd618ee8ef8c (patch)
treeabf4b26772fefbf15c59738d72c136d3f5e85a7c
parent0ef4c7d10e0273219c8839f01ad9dc4d40d6c25b (diff)
downloaddnspython-3a26c39c97c10db22f627c5761d9fd618ee8ef8c.tar.gz
Add response to NoAnswer exception.
Only question section is returned from str(NoAnswer). Whole response variable is intended for application debug logs and is not returned from str().
-rw-r--r--dns/resolver.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/dns/resolver.py b/dns/resolver.py
index bd4b0ec..cd3d1c2 100644
--- a/dns/resolver.py
+++ b/dns/resolver.py
@@ -76,9 +76,12 @@ Timeout = dns.exception.Timeout
class NoAnswer(dns.exception.DNSException):
"""The DNS response does not contain an answer to the question."""
- fmt = '%s: {question}' % __doc__[:-1]
- supp_kwargs = set(['question'])
+ fmt = '%s: {query}' % __doc__[:-1]
+ supp_kwargs = set(['response'])
+ def _fmt_kwargs(self, **kwargs):
+ return super(NoAnswer, self)._fmt_kwargs(
+ query=kwargs['response'].question)
class NoNameservers(dns.exception.DNSException):
"""No non-broken nameservers are available to answer the query."""
@@ -171,9 +174,9 @@ class Answer(object):
if raise_on_no_answer:
raise NoAnswer(question=response.question)
if raise_on_no_answer:
- raise NoAnswer(question=response.question)
+ raise NoAnswer(response=response)
if rrset is None and raise_on_no_answer:
- raise NoAnswer(question=request.question)
+ raise NoAnswer(response=response)
self.canonical_name = qname
self.rrset = rrset
if rrset is None: