[Git][NTPsec/ntpsec][master] ControlPacket() now consistently uses extension, not data

Ian Bruene gitlab at mg.gitlab.com
Wed Aug 23 20:47:50 UTC 2017


Ian Bruene pushed to branch master at NTPsec / ntpsec


Commits:
520a7671 by Ian Bruene at 2017-08-23T15:46:57-05:00
ControlPacket() now consistently uses extension, not data

- - - - -


2 changed files:

- pylib/packet.py
- tests/pylib/test_packet.py


Changes:

=====================================
pylib/packet.py
=====================================
--- a/pylib/packet.py
+++ b/pylib/packet.py
@@ -622,9 +622,7 @@ class ControlPacket(Packet):
          self.offset,
          self.count) = struct.unpack(ControlPacket.format,
                                      rawdata[:ControlPacket.HEADER_LEN])
-        self.data = rawdata[ControlPacket.HEADER_LEN:]
-        # TODO: This method does not handle .extension
-        #  fix this, use .data or .extension?
+        self.extension = rawdata[ControlPacket.HEADER_LEN:]
         return (self.sequence, self.status, self.associd, self.offset)
 
     def flatten(self):
@@ -1083,7 +1081,7 @@ class ControlSession:
             # Someday, perhaps, check authentication here
 
             # Clip off the MAC, if any
-            rpkt.data = rpkt.data[:rpkt.count]
+            rpkt.extension = rpkt.extension[:rpkt.count]
 
             if rpkt.count == 0 and rpkt.more():
                 warn("Received count of 0 in non-final fragment\n")
@@ -1144,7 +1142,8 @@ class ControlSession:
                         break
                 else:
                     self.response = polybytes(
-                        "".join([polystr(frag.data) for frag in fragments]))
+                        "".join([polystr(frag.extension) \
+                                 for frag in fragments]))
                     warndbg("Fragment collection ends. %d bytes "
                             " in %d fragments\n"
                             % (len(self.response), len(fragments)), 1)


=====================================
tests/pylib/test_packet.py
=====================================
--- a/tests/pylib/test_packet.py
+++ b/tests/pylib/test_packet.py
@@ -776,7 +776,7 @@ class TestControlPacket(unittest.TestCase):
         self.assertEqual(cls.offset, 32)
         self.assertEqual(cls.count, 16)
         # Test flatten
-        self.assertEqual(cls.flatten(), header)
+        self.assertEqual(cls.flatten(), totaldata)
         # Test send
         send_data = []
 
@@ -784,7 +784,7 @@ class TestControlPacket(unittest.TestCase):
             send_data.append(pkt)
         cls.session.sendpkt = send_jig
         cls.send()
-        self.assertEqual(send_data, [header])
+        self.assertEqual(send_data, [totaldata])
 
 
 class TestControlSession(unittest.TestCase):



View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/520a7671d6bb2271c162f62b99ce03ef04d6b99d

---
View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/520a7671d6bb2271c162f62b99ce03ef04d6b99d
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ntpsec.org/pipermail/vc/attachments/20170823/4deb0ae3/attachment.html>


More information about the vc mailing list