class documentation

class twisted.names.common.ResolverBase: (source)

Known subclasses: twisted.names.authority.FileAuthority, twisted.names.cache.CacheResolver, twisted.names.client.Resolver, twisted.names.hosts.Resolver, twisted.names.resolve.ResolverChain, twisted.names.root.Resolver

Implements interfaces: twisted.internet.interfaces.IResolver

View In Hierarchy

ResolverBase is a base class for implementations of interfaces.IResolver which deals with a lot of the boilerplate of implementing all of the lookup methods.

Instance Variable typeToMethod Undocumented
Method __init__ Undocumented
Method exceptionForCode Convert a response code (one of the possible values of dns.Message.rCode to an exception instance representing it.
Method query Dispatch query to the method which can handle its type.
Method lookupAddress Perform an A record lookup.
Method lookupIPV6Address Perform an AAAA record lookup.
Method lookupAddress6 Perform an A6 record lookup.
Method lookupMailExchange Perform an MX record lookup.
Method lookupNameservers Perform an NS record lookup.
Method lookupCanonicalName Perform a CNAME record lookup.
Method lookupMailBox Perform an MB record lookup.
Method lookupMailGroup Perform an MG record lookup.
Method lookupMailRename Perform an MR record lookup.
Method lookupPointer Perform a PTR record lookup.
Method lookupAuthority Perform an SOA record lookup.
Method lookupNull Perform a NULL record lookup.
Method lookupWellKnownServices Perform a WKS record lookup.
Method lookupService Perform an SRV record lookup.
Method lookupHostInfo Perform a HINFO record lookup.
Method lookupMailboxInfo Perform an MINFO record lookup.
Method lookupText Perform a TXT record lookup.
Method lookupSenderPolicy Perform a SPF record lookup.
Method lookupResponsibility Perform an RP record lookup.
Method lookupAFSDatabase Perform an AFSDB record lookup.
Method lookupZone Perform an AXFR record lookup.
Method lookupNamingAuthorityPointer Perform a NAPTR record lookup.
Method lookupAllRecords Perform an ALL_RECORD lookup.
Method getHostByName Resolve the domain name name into an IP address.
Class Variable _errormap A dict mapping DNS protocol failure response codes to exception classes which will be used to represent those failures.
Class Variable _log Undocumented
Method _lookup Undocumented
Method _cbRecords Undocumented
_errormap = (source)
A dict mapping DNS protocol failure response codes to exception classes which will be used to represent those failures.
_log = (source)

Undocumented

typeToMethod = (source)

Undocumented

(type: dict)
def exceptionForCode(self, responseCode): (source)

Convert a response code (one of the possible values of dns.Message.rCode to an exception instance representing it.

Present Since10.0
def query(self, query, timeout=None): (source)

Dispatch query to the method which can handle its type.

ParametersqueryThe DNS query being issued, to which a response is to be generated.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupAddress(self, name, timeout=None): (source)

Perform an A record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupIPV6Address(self, name, timeout=None): (source)

Perform an AAAA record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupAddress6(self, name, timeout=None): (source)

Perform an A6 record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupMailExchange(self, name, timeout=None): (source)

Perform an MX record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupNameservers(self, name, timeout=None): (source)

Perform an NS record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupCanonicalName(self, name, timeout=None): (source)

Perform a CNAME record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupMailBox(self, name, timeout=None): (source)

Perform an MB record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupMailGroup(self, name, timeout=None): (source)

Perform an MG record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupMailRename(self, name, timeout=None): (source)

Perform an MR record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupPointer(self, name, timeout=None): (source)

Perform a PTR record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupAuthority(self, name, timeout=None): (source)

Perform an SOA record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupNull(self, name, timeout=None): (source)

Perform a NULL record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupWellKnownServices(self, name, timeout=None): (source)

Perform a WKS record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupService(self, name, timeout=None): (source)

Perform an SRV record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupHostInfo(self, name, timeout=None): (source)

Perform a HINFO record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupMailboxInfo(self, name, timeout=None): (source)

Perform an MINFO record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupText(self, name, timeout=None): (source)

Perform a TXT record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupSenderPolicy(self, name, timeout=None): (source)

Perform a SPF record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupResponsibility(self, name, timeout=None): (source)

Perform an RP record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupAFSDatabase(self, name, timeout=None): (source)

Perform an AFSDB record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupZone(self, name, timeout=None): (source)

Perform an AXFR record lookup.

NB This is quite different from other DNS requests. See http://cr.yp.to/djbdns/axfr-notes.html for more information.

NB Unlike other lookup* methods, the timeout here is not a list of ints, it is a single int.

ParametersnameDNS name to resolve.
timeoutWhen this timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second and third elements are always empty. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupNamingAuthorityPointer(self, name, timeout=None): (source)

Perform a NAPTR record lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def lookupAllRecords(self, name, timeout=None): (source)

Perform an ALL_RECORD lookup.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
ReturnsA Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader instances. The first element of the tuple gives answers. The second element of the tuple gives authorities. The third element of the tuple gives additional information. The Deferred may instead fail with one of the exceptions defined in twisted.names.error or with NotImplementedError.
def getHostByName(self, name, timeout=None, effort=10): (source)

Resolve the domain name name into an IP address.

ParametersnameDNS name to resolve.
timeoutNumber of seconds after which to reissue the query. When the last timeout expires, the query is considered failed.
effortUndocumented
ReturnsThe callback of the Deferred that is returned will be passed a string that represents the IP address of the specified name, or the errback will be called if the lookup times out. If multiple types of address records are associated with the name, A6 records will be returned in preference to AAAA records, which will be returned in preference to A records. If there are multiple records of the type to be returned, one will be selected at random.
Raisestwisted.internet.defer.TimeoutErrorRaised (asynchronously) if the name cannot be resolved within the specified timeout period.
def _cbRecords(self, records, name, effort): (source)

Undocumented

API Documentation for Twisted, generated by pydoctor 20.12.1 at 2021-02-28 19:53:36.