summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Halley <halley@dnspython.org>2021-01-04 12:17:36 -0800
committerBob Halley <halley@dnspython.org>2021-01-04 12:17:36 -0800
commit14bbb9ce8865dd41465f85a1fce23989b5cb3cd0 (patch)
treeae7ce29af0478dd0c2d78a3559f8d338724b850b
parent00b57545589c1ff7baf648f5c7ac09314adc7738 (diff)
downloaddnspython-14bbb9ce8865dd41465f85a1fce23989b5cb3cd0.tar.gz
_WireReader.read() should make flags a dns.flags.Flag [Issue #606]
-rw-r--r--dns/message.py2
-rw-r--r--tests/test_message.py5
2 files changed, 6 insertions, 1 deletions
diff --git a/dns/message.py b/dns/message.py
index 428c98e..ac88837 100644
--- a/dns/message.py
+++ b/dns/message.py
@@ -990,7 +990,7 @@ class _WireReader:
self.parser.get_struct('!HHHHHH')
factory = _message_factory_from_opcode(dns.opcode.from_flags(flags))
self.message = factory(id=id)
- self.message.flags = flags
+ self.message.flags = dns.flags.Flag(flags)
self.initialize_message(self.message)
self.one_rr_per_rrset = \
self.message._get_one_rr_per_rrset(self.one_rr_per_rrset)
diff --git a/tests/test_message.py b/tests/test_message.py
index ed48e7b..19738e6 100644
--- a/tests/test_message.py
+++ b/tests/test_message.py
@@ -676,6 +676,11 @@ flags QR
IN SOA
''')
+ def test_from_wire_makes_Flag(self):
+ m = dns.message.from_wire(goodwire)
+ self.assertIsInstance(m.flags, dns.flags.Flag)
+ self.assertEqual(m.flags, dns.flags.Flag.RD)
+
if __name__ == '__main__':
unittest.main()