building native code: remove checksum fields
authorYaroslav Brustinov <[email protected]>
Tue, 15 Mar 2016 14:19:13 +0000 (16:19 +0200)
committerYaroslav Brustinov <[email protected]>
Tue, 15 Mar 2016 14:19:13 +0000 (16:19 +0200)
scripts/automation/trex_control_plane/stl/trex_stl_lib/trex_stl_streams.py

index b1bde03..2baa645 100644 (file)
@@ -508,7 +508,13 @@ class STLStream(object):
     def to_code (self):
         """ convert to Python code as profile  """
         packet = Ether(self.pkt)
-        packet.hide_defaults()
+        layer = packet
+        while layer:                    # remove checksums
+            for chksum_name in ('cksum', 'chksum'):
+                if chksum_name in layer.fields:
+                    del layer.fields[chksum_name]
+            layer = layer.payload
+        packet.hide_defaults()          # remove fields with default values
         payload = packet.getlayer('Raw')
         packet_command = packet.command()
         imports_arr = []