t.n.c.Resolver(common.ResolverBase) : class documentation

Part of twisted.names.client View Source View In Hierarchy

Implements interfaces: twisted.internet.interfaces.IResolver

No class docstring
Method __init__ No summary
Method __getstate__ Undocumented
Method __setstate__ Undocumented
Method maybeParseConfig Undocumented
Method parseConfig Undocumented
Method pickServer Return the address of a nameserver.
Method connectionMade Undocumented
Method messageReceived Undocumented
Method queryUDP Make a number of DNS queries via UDP.
Method queryTCP Make a number of DNS queries via TCP.
Method filterAnswers Extract results from the given message.
Method lookupZone Perform an AXFR request. This is quite different from usual DNS requests. See http://cr.yp.to/djbdns/axfr-notes.html for more information.
Method _reissue Undocumented
Method _lookup Undocumented
Method _timeoutZone Undocumented
Method _cbLookupZone Undocumented

Inherited from ResolverBase:

Method query Undocumented
Method lookupAddress
Method lookupIPV6Address
Method lookupAddress6
Method lookupMailExchange
Method lookupNameservers
Method lookupCanonicalName
Method lookupMailBox
Method lookupMailGroup
Method lookupMailRename
Method lookupPointer
Method lookupAuthority
Method lookupNull
Method lookupWellKnownServices
Method lookupService
Method lookupHostInfo
Method lookupMailboxInfo
Method lookupText
Method lookupResponsibility
Method lookupAFSDatabase
Method lookupAllRecords
Method getHostByName
Method _cbRecords Undocumented
def __init__(self, resolv=None, servers=None, timeout=(1, 3, 11, 45)): (source)
Construct a resolver which will query domain name servers listed in the resolv.conf(5)-format file given by resolv as well as those in the given servers list. Servers are queried in a round-robin fashion. If given, resolv is periodically checked for modification and re-parsed if it is noticed to have changed.
ParametersserversIf not None, interpreted as a list of addresses of domain name servers to attempt to use for this lookup. Addresses should be in dotted-quad form. If specified, overrides resolv. (type: list of (str, int) or None )
resolvFilename to read and parse as a resolver(5) configuration file. (type: str )
timeoutDefault number of seconds after which to reissue the query. When the last timeout expires, the query is considered failed. (type: Sequence of int )
RaisesValueErrorRaised if no nameserver addresses can be found.
def __getstate__(self): (source)
Undocumented
def __setstate__(self, state): (source)
Undocumented
def maybeParseConfig(self): (source)
Undocumented
def parseConfig(self, resolvConf): (source)
Undocumented
def pickServer(self): (source)

Return the address of a nameserver.

TODO: Weight servers for response time so faster ones can be preferred.
def connectionMade(self, protocol): (source)
Undocumented
def messageReceived(self, message, protocol, address=None): (source)
Undocumented
def queryUDP(self, queries, timeout=None): (source)
Make a number of DNS queries via UDP.
ParametersqueriesThe queries to make. (type: A list of dns.Query instances )
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed. (type: Sequence of int )
Returns (type: Deferred @raise twisted.internet.defer.TimeoutError: When the query times out. )
def _reissue(self, reason, addressesLeft, addressesUsed, query, timeout): (source)
Undocumented
def queryTCP(self, queries, timeout=10): (source)
Make a number of DNS queries via TCP.
ParametersqueriesThe queries to make. (type: Any non-zero number of dns.Query instances )
timeoutThe number of seconds after which to fail. (type: int )
Returns (type: Deferred )
def filterAnswers(self, message): (source)

Extract results from the given message.

If the message was truncated, re-attempt the query over TCP and return a Deferred which will fire with the results of that query.

If the message's result code is not dns.OK, return a Failure indicating the type of error which occurred.

Otherwise, return a three-tuple of lists containing the results from the answers section, the authority section, and the additional section.
def _lookup(self, name, cls, type, timeout): (source)
Undocumented
def lookupZone(self, name, timeout=10): (source)
Perform an AXFR request. This is quite different from usual DNS requests. See http://cr.yp.to/djbdns/axfr-notes.html for more information.
def _timeoutZone(self, d, controller, connector, seconds): (source)
Undocumented
def _cbLookupZone(self, result, connector): (source)
Undocumented
API Documentation for Twisted, generated by pydoctor at 2011-10-27 15:57:47.