class twisted.names.authority.FileAuthority(common.ResolverBase): (source)
Known subclasses: twisted.names.authority.BindAuthority, twisted.names.authority.PySourceAuthority, twisted.names.secondary.SecondaryAuthority
An Authority that is loaded from a file.
This is an abstract class that implements record search logic. To create a functional resolver, subclass it and override the loadFile
method.
Instance Variable | soa | A 2-tuple containing the SOA domain name as a bytes and a dns.Record_SOA . |
Instance Variable | records | A mapping of domains (as lowercased bytes ) to records. |
Method | __init__ | Undocumented |
Method | __setstate__ | Undocumented |
Instance Variable | __dict__ | Undocumented |
Method | loadFile | Load DNS records from a file. |
Method | lookupZone | Perform an AXFR record lookup. |
Instance Variable | _ADDITIONAL_PROCESSING_TYPES | Record types for which additional processing will be done. |
Instance Variable | _ADDRESS_TYPES | Record types which are useful for inclusion in the additional section generated during additional processing. |
Instance Variable | _cache | Undocumented |
Method | _additionalRecords | Find locally known information that could be useful to the consumer of the response and construct appropriate records to include in the additional section of that response. |
Method | _lookup | Determine a response to a particular DNS query. |
Method | _cbAllRecords | Undocumented |
Inherited from ResolverBase:
Instance Variable | typeToMethod | 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 | 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 | _cbRecords | Undocumented |
bytes
and a dns.Record_SOA
.bytes
) to records.dict
with bytes
keys)
Undocumented
Load DNS records from a file.
This method populates the soa and records attributes. It must be overridden in a subclass. It is called once from the initializer.
Parameters | filename | The filename parameter that was passed to the initilizer. |
Returns | None -- the return value is ignored |
Find locally known information that could be useful to the consumer of the response and construct appropriate records to include in the additional section of that response.
Essentially, implement RFC 1034 section 4.3.2 step 6.
Parameters | answer | A list of the records which will be included in the answer section of the response. |
authority | A list of the records which will be included in the authority section of the response. | |
ttl | The default TTL for records for which this is not otherwise specified. | |
Returns | A generator of dns.RRHeader instances for inclusion in the additional section. These instances represent extra information about the records in answer and authority . |
Determine a response to a particular DNS query.
Parameters | name | The name which is being queried and for which to lookup a response. (type: bytes ) |
cls | The class which is being queried. Only IN is implemented here and this value is presently disregarded. (type: int ) | |
type | The type of records being queried. See the types defined in twisted.names.dns . (type: int ) | |
timeout | All processing is done locally and a result is available immediately, so the timeout value is ignored. | |
Returns | A Deferred that fires with a tuple of three sets of response records (to comprise the answer, authority, and additional sections of a DNS response) or with a Failure if there is a problem processing the query. |
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.
Parameters | name | DNS name to resolve. |
timeout | When this timeout expires, the query is considered failed. | |
Returns | A 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 . |