diff options
author | Brian Wellington <bwelling@xbill.org> | 2020-06-30 10:41:01 -0700 |
---|---|---|
committer | Brian Wellington <bwelling@xbill.org> | 2020-06-30 10:41:01 -0700 |
commit | 382000b2347131da35142778c074fdb2abc609e5 (patch) | |
tree | f30fc2b853eada8099290b597e76a7a36951a781 | |
parent | 29435796ea09cae99dbf140180011dd6eda08c28 (diff) | |
download | dnspython-382000b2347131da35142778c074fdb2abc609e5.tar.gz |
Remove dns.message.Message multi field.
The only user of this is the internal _WireReader class, so just pass it
the flag rather than store it on the message.
-rw-r--r-- | dns/message.py | 13 | ||||
-rw-r--r-- | dns/message.pyi | 1 |
2 files changed, 6 insertions, 8 deletions
diff --git a/dns/message.py b/dns/message.py index 9fd3d77..00359ef 100644 --- a/dns/message.py +++ b/dns/message.py @@ -115,7 +115,6 @@ class Message: self.xfr = False self.origin = None self.tsig_ctx = None - self.multi = False self.index = {} @property @@ -725,11 +724,12 @@ class _WireReader: question_only: Are we only reading the question? one_rr_per_rrset: Put each RR into its own RRset? ignore_trailing: Ignore trailing junk at end of request? + multi: Is this message part of a multi-message sequence? DNS dynamic updates. """ def __init__(self, wire, initialize_message, question_only=False, - one_rr_per_rrset=False, ignore_trailing=False): + one_rr_per_rrset=False, ignore_trailing=False, multi=False): self.wire = dns.wiredata.maybe_wrap(wire) self.message = None self.current = 0 @@ -737,6 +737,7 @@ class _WireReader: self.question_only = question_only self.one_rr_per_rrset = one_rr_per_rrset self.ignore_trailing = ignore_trailing + self.multi = multi def _get_question(self, section_number, qcount): """Read the next *qcount* records from the wire data and add them to @@ -818,7 +819,7 @@ class _WireReader: self.message.request_mac, rr_start, self.message.tsig_ctx, - self.message.multi) + self.multi) self.message.tsig = dns.rrset.from_rdata(absolute_name, 0, rd) else: rrset = self.message.find_rrset(section, name, @@ -855,8 +856,7 @@ class _WireReader: self._get_section(MessageSection.ADDITIONAL, adcount) if not self.ignore_trailing and self.current != l: raise TrailingJunk - if self.message.multi and self.message.tsig_ctx and \ - not self.message.had_tsig: + if self.multi and self.message.tsig_ctx and not self.message.had_tsig: self.message.tsig_ctx.update(self.wire) return self.message @@ -923,10 +923,9 @@ def from_wire(wire, keyring=None, request_mac=b'', xfr=False, origin=None, message.xfr = xfr message.origin = origin message.tsig_ctx = tsig_ctx - message.multi = multi reader = _WireReader(wire, initialize_message, question_only, - one_rr_per_rrset, ignore_trailing) + one_rr_per_rrset, ignore_trailing, multi) try: m = reader.read() except dns.exception.FormError: diff --git a/dns/message.pyi b/dns/message.pyi index 8b83a78..6cf12d3 100644 --- a/dns/message.pyi +++ b/dns/message.pyi @@ -34,7 +34,6 @@ class Message: self.origin = None self.tsig_ctx = None self.had_tsig = False - self.multi = False self.index : Dict[Tuple[rrset.RRset, name.Name, int, int, Union[int,str], int], rrset.RRset] = {} def is_response(self, other : Message) -> bool: |