Fix checksum comparison in traffic scripts
[csit.git] / resources / traffic_scripts / ipv6_sweep_ping.py
index c1fe7d3..da14c5d 100755 (executable)
@@ -19,7 +19,8 @@ import sys
 import logging
 import os
 logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
-from resources.libraries.python.PacketVerifier import RxQueue, TxQueue
+from resources.libraries.python.PacketVerifier import RxQueue, TxQueue,\
+    checksum_equal
 from resources.libraries.python.TrafficScriptArg import TrafficScriptArg
 from scapy.layers.inet6 import IPv6, ICMPv6ND_NA, ICMPv6NDOptDstLLAddr
 from scapy.layers.inet6 import ICMPv6EchoRequest, ICMPv6EchoReply
@@ -87,14 +88,14 @@ def main():
 
         if icmpv6.id != echo_id or icmpv6.seq != echo_seq:
             raise RuntimeError(
-                'Invalid ICMPv6 echo reply received ID {0} seq {1} should be ' +
+                'Invalid ICMPv6 echo reply received ID {0} seq {1} should be ' \
                 'ID {2} seq {3}, {0}'.format(icmpv6.id, icmpv6.seq, echo_id,
                                              echo_seq))
 
         cksum = icmpv6.cksum
         del icmpv6.cksum
         tmp = ICMPv6EchoReply(str(icmpv6))
-        if tmp.cksum != cksum:
+        if not checksum_equal(tmp.cksum, cksum):
             raise RuntimeError(
                 'Invalid checksum {0} should be {1}'.format(cksum, tmp.cksum))