From: Mitchell E Berger Date: Wed, 9 May 2018 04:10:39 +0000 (-0400) Subject: Fix delegation... again. X-Git-Tag: 0.0.18^0 X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-dns.git/commitdiff_plain/f0fcc10d816f9bd3f04b1c51f09d9a60ecaebe77?ds=sidebyside Fix delegation... again. --- diff --git a/debian/changelog b/debian/changelog index 3abce31..b1b93ae 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +invirt-dns (0.0.18) precise; urgency=low + + * Stop replacing the Authority section with the Results section; Twisted + now places NS results in the Authority section, and our swapping has + once again broken delegation and thus the dev cluster. + + -- Mitchell Berger Wed, 09 May 2018 00:11:00 -0400 + invirt-dns (0.0.17) precise; urgency=low * Don't populate the authority or additional sections in responses diff --git a/invirt-dns b/invirt-dns index ed0ab01..272fd6c 100755 --- a/invirt-dns +++ b/invirt-dns @@ -208,17 +208,6 @@ class DelegatingQuotingBindAuthority(authority.BindAuthority): name = name[name.find('.') + 1 :] deferredResult = authority.BindAuthority._lookup(self, name, cls, dns.NS, timeout) - # If we found somewhere to delegate the query to, our _lookup() - # for the NS record resulted in it being in the 'results' section. - # We need to instead return that information in the 'authority' - # section to delegate, and return an empty 'results' section - # (because we didn't find the name we were asked about). We - # leave the 'additional' section as we received it because it - # may contain A records for the DNS server we're delegating to. - if maybeDelegate and not isinstance(deferredResult.result, - failure.Failure): - (nsResults, nsAuthority, nsAdditional) = deferredResult.result - deferredResult = defer.succeed(([], nsResults, nsAdditional)) return deferredResult class TypeLenientResolverChain(resolve.ResolverChain):