Home | Trees | Indices | Help |
|
---|
|
DNS Messages
|
|||
ShortHeader The DNS packet passed to from_wire() is too short. |
|||
TrailingJunk The DNS packet passed to from_wire() has extra junk at the end of it. |
|||
UnknownHeaderField The header field name was not recognized when converting from text into a message. |
|||
BadEDNS An OPT record occurred somewhere other than the start of the additional data section. |
|||
BadTSIG A TSIG record occurred somewhere other than the end of the additional data section. |
|||
UnknownTSIGKey A TSIG with an unknown key was received. |
|||
Message A DNS message. |
|||
_WireReader Wire format reader. |
|||
_TextReader Text format reader. |
|
|||
|
|||
|
|||
|
|||
|
|||
|
|
|||
QUESTION = 0
|
|||
ANSWER = 1
|
|||
AUTHORITY = 2
|
|||
ADDITIONAL = 3
|
|||
__package__ =
|
|
Convert a DNS wire format message into a message object. *keyring*, a ``dict``, the keyring to use if the message is signed. *request_mac*, a ``binary``. If the message is a response to a TSIG-signed request, *request_mac* should be set to the MAC of that request. *xfr*, a ``bool``, should be set to ``True`` if this message is part of a zone transfer. *origin*, a ``dns.name.Name`` or ``None``. If the message is part of a zone transfer, *origin* should be the origin name of the zone. *tsig_ctx*, a ``hmac.HMAC`` objext, the ongoing TSIG context, used when validating zone transfers. *multi*, a ``bool``, should be set to ``True`` if this message part of a multiple message sequence. *first*, a ``bool``, should be set to ``True`` if this message is stand-alone, or the first message in a multi-message sequence. *question_only*, a ``bool``. If ``True``, read only up to the end of the question section. *one_rr_per_rrset*, a ``bool``. If ``True``, put each RR into its own RRset. *ignore_trailing*, a ``bool``. If ``True``, ignore trailing junk at end of the message. Raises ``dns.message.ShortHeader`` if the message is less than 12 octets long. Raises ``dns.messaage.TrailingJunk`` if there were octets in the message past the end of the proper DNS message, and *ignore_trailing* is ``False``. Raises ``dns.message.BadEDNS`` if an OPT record was in the wrong section, or occurred more than once. Raises ``dns.message.BadTSIG`` if a TSIG record was not the last record of the additional data section. Returns a ``dns.message.Message``. |
Convert the text format message into a message object. *text*, a ``text``, the text format message. Raises ``dns.message.UnknownHeaderField`` if a header is unknown. Raises ``dns.exception.SyntaxError`` if the text is badly formed. Returns a ``dns.message.Message object`` |
Read the next text format message from the specified file. *f*, a ``file`` or ``text``. If *f* is text, it is treated as the pathname of a file to open. Raises ``dns.message.UnknownHeaderField`` if a header is unknown. Raises ``dns.exception.SyntaxError`` if the text is badly formed. Returns a ``dns.message.Message object`` |
Make a query message. The query name, type, and class may all be specified either as objects of the appropriate type, or as strings. The query will have a randomly chosen query id, and its DNS flags will be set to dns.flags.RD. qname, a ``dns.name.Name`` or ``text``, the query name. *rdtype*, an ``int`` or ``text``, the desired rdata type. *rdclass*, an ``int`` or ``text``, the desired rdata class; the default is class IN. *use_edns*, an ``int``, ``bool`` or ``None``. The EDNS level to use; the default is None (no EDNS). See the description of dns.message.Message.use_edns() for the possible values for use_edns and their meanings. *want_dnssec*, a ``bool``. If ``True``, DNSSEC data is desired. *ednsflags*, an ``int``, the EDNS flag values. *payload*, an ``int``, is the EDNS sender's payload field, which is the maximum size of UDP datagram the sender can handle. I.e. how big a response to this message can be. *request_payload*, an ``int``, is the EDNS payload size to use when sending this message. If not specified, defaults to the value of *payload*. *options*, a list of ``dns.edns.Option`` objects or ``None``, the EDNS options. Returns a ``dns.message.Message`` |
Make a message which is a response for the specified query. The message returned is really a response skeleton; it has all of the infrastructure required of a response, but none of the content. The response's question section is a shallow copy of the query's question section, so the query's question RRsets should not be changed. *query*, a ``dns.message.Message``, the query to respond to. *recursion_available*, a ``bool``, should RA be set in the response? *our_payload*, an ``int``, the payload size to advertise in EDNS responses. *fudge*, an ``int``, the TSIG time fudge. Returns a ``dns.message.Message`` object. |
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Sat Dec 8 10:59:54 2018 | http://epydoc.sourceforge.net |