[Twisted-Python] Twisted.Names assistance with auth and additional sections
Jean-Paul Calderone
exarkun at divmod.com
Tue Mar 20 16:30:11 MDT 2007
On Tue, 20 Mar 2007 14:27:26 -0700, Sean Leach <kickdaddy at gmail.com> wrote:
>Hey all,
>
>I have a client I have written using twisted.names that will send a
>DNS request. Here is the gist of the relevant code:
>
> (tfp, tfile) = tempfile.mkstemp()
> os.write(tfp, 'nameserver %s' % ip)
> os.close(tfp)
> resolver = client.createResolver(resolvconf=tfile)
> deferred = resolver.lookupAddress(somevalue)
> deferred.addCallback(resultHandler)
>
>hacky way to set the IP, but I am having issues with passing in the
>"servers" list I don't want to troubleshoot until I figure out this
>problem.
>
>Anyways, as you can see, this code calls the lookupAddress method for
>the name I want. The problem I am having is it is only returning the
>answer section of the response. I need the additional and authority
>sections as well (and I know for sure those sections exist in the
>response). I have looked at the docs and the code, and I don't know
>what I am missing. I am sure it's something silly, but I am missing
>it right now.
>
>So long question short, what do I need to change in my code so I can
>get the additional sections and authority sections in the response so
>I can get to those values?
One approach would be to use queryUDP directly instead of lookupAddress:
resolver.queryUDP([dns.Query(name, dns.A, dns.IN)])
Which will give you a full message object back, including lists of answers,
additional, and authority sections.
Jean-Paul
More information about the Twisted-Python
mailing list