diff options
| author | Bob Halley <halley@dnspython.org> | 2020-06-26 07:57:06 -0700 |
|---|---|---|
| committer | Bob Halley <halley@dnspython.org> | 2020-06-26 07:57:06 -0700 |
| commit | 9c55663682055c786176f18dec48aedc56ebbd56 (patch) | |
| tree | e755d607872335b750eca6df2191898a2d4cdd5d /dns | |
| parent | aeb038048340770f7442114a3874b4d79c73722b (diff) | |
| download | dnspython-9c55663682055c786176f18dec48aedc56ebbd56.tar.gz | |
basic documentation updates for revised message hierarchy
Diffstat (limited to 'dns')
| -rw-r--r-- | dns/message.py | 15 | ||||
| -rw-r--r-- | dns/update.py | 3 |
2 files changed, 14 insertions, 4 deletions
diff --git a/dns/message.py b/dns/message.py index 710cc98..a08b051 100644 --- a/dns/message.py +++ b/dns/message.py @@ -129,6 +129,7 @@ class Message: @property def question(self): + """ The question section.""" return self.sections[0] @question.setter @@ -137,6 +138,7 @@ class Message: @property def answer(self): + """ The answer section.""" return self.sections[1] @answer.setter @@ -145,6 +147,7 @@ class Message: @property def authority(self): + """ The authority section.""" return self.sections[2] @authority.setter @@ -153,6 +156,7 @@ class Message: @property def additional(self): + """ The additional data section.""" return self.sections[3] @additional.setter @@ -1226,14 +1230,14 @@ def make_query(qname, rdtype, rdclass=dns.rdataclass.IN, use_edns=None, encoder/decoder. If ``None``, the default IDNA 2003 encoder/decoder is used. - Returns a ``dns.message.Message`` + Returns a ``dns.message.QueryMessage`` """ if isinstance(qname, str): qname = dns.name.from_text(qname, idna_codec=idna_codec) rdtype = dns.rdatatype.RdataType.make(rdtype) rdclass = dns.rdataclass.RdataClass.make(rdclass) - m = Message() + m = QueryMessage() m.flags |= dns.flags.RD m.find_rrset(m.question, qname, rdclass, rdtype, create=True, force_unique=True) @@ -1283,12 +1287,15 @@ def make_response(query, recursion_available=False, our_payload=8192, *fudge*, an ``int``, the TSIG time fudge. - Returns a ``dns.message.Message`` object. + Returns a ``dns.message.Message`` object whose specific class is + appropriate for the query. For example, if query is a + ``dns.update.UpdateMessage``, response will be too. """ if query.flags & dns.flags.QR: raise dns.exception.FormError('specified query message is not a query') - response = dns.message.Message(query.id) + factory = _message_factory_from_opcode(query.opcode) + response = factory(id=query.id) response.flags = dns.flags.QR | (query.flags & dns.flags.RD) if recursion_available: response.flags |= dns.flags.RA diff --git a/dns/update.py b/dns/update.py index d57d0cd..9615a73 100644 --- a/dns/update.py +++ b/dns/update.py @@ -88,6 +88,7 @@ class UpdateMessage(dns.message.Message): @property def zone(self): + """The zone section.""" return self.sections[0] @zone.setter @@ -96,6 +97,7 @@ class UpdateMessage(dns.message.Message): @property def prerequisite(self): + """The prerequisite section.""" return self.sections[1] @prerequisite.setter @@ -104,6 +106,7 @@ class UpdateMessage(dns.message.Message): @property def update(self): + """The update section.""" return self.sections[2] @update.setter |
