X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Ftraffic_scripts%2Fipv4_sweep_ping.py;h=6c18f795c23b409aa5303e6873770a179f173a93;hb=af2c77acfa337228ea3c4c5f2140f39124ec2ab9;hp=4b82a9b03e5bf2fde3dc73068c6d099453050e1d;hpb=b92a827b1c7f48da4214e992e5503ebe1c182416;p=csit.git diff --git a/resources/traffic_scripts/ipv4_sweep_ping.py b/resources/traffic_scripts/ipv4_sweep_ping.py index 4b82a9b03e..6c18f795c2 100755 --- a/resources/traffic_scripts/ipv4_sweep_ping.py +++ b/resources/traffic_scripts/ipv4_sweep_ping.py @@ -64,12 +64,10 @@ def main(): ether = rxq.recv(ignore=sent_packets) if ether is None: - rxq._proc.terminate() raise RuntimeError( 'ICMP echo reply seq {0} Rx timeout'.format(echo_seq)) if not ether.haslayer(IP): - rxq._proc.terminate() raise RuntimeError( 'Unexpected packet with no IPv4 received {0}'.format( ether.__repr__())) @@ -77,7 +75,6 @@ def main(): ipv4 = ether['IP'] if not ipv4.haslayer(ICMP): - rxq._proc.terminate() raise RuntimeError( 'Unexpected packet with no ICMP received {0}'.format( ipv4.__repr__())) @@ -85,7 +82,6 @@ def main(): icmpv4 = ipv4['ICMP'] if icmpv4.id != echo_id or icmpv4.seq != echo_seq: - rxq._proc.terminate() raise RuntimeError( 'Invalid ICMP echo reply received ID {0} seq {1} should be ' + 'ID {2} seq {3}, {0}'.format(icmpv4.id, icmpv4.seq, echo_id, @@ -95,17 +91,17 @@ def main(): del icmpv4.chksum tmp = ICMP(str(icmpv4)) if tmp.chksum != chksum: - rxq._proc.terminate() raise RuntimeError( 'Invalid checksum {0} should be {1}'.format(chksum, tmp.chksum)) - recv_payload_len = ipv4.len - 20 - 8 - load = tmp['Raw'].load[0:recv_payload_len] + + if 'Raw' in icmpv4: + load = icmpv4['Raw'].load + else: + load = [] if load != data[0:echo_seq]: - rxq._proc.terminate() raise RuntimeError( 'Received ICMP payload does not match sent payload') - rxq._proc.terminate() sys.exit(0) if __name__ == "__main__":