[dts] [PATCH V1] fix ieee1588 Ether type is not PTP
Liu, Yong
yong.liu at intel.com
Thu Aug 24 07:22:47 CEST 2017
Gang, please use pep8 check with your changes first. I've seen some pep issues in your patch.
Also some comments inline.
Thanks,
Marvin
> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of xu,gang
> Sent: Wednesday, August 23, 2017 3:36 PM
> To: dts at dpdk.org
> Cc: Xu, GangX <gangx.xu at intel.com>
> Subject: [dts] [PATCH V1] fix ieee1588 Ether type is not PTP
>
> use tcpdump replace sniff caught package
>
> Signed-off-by: xu,gang <gangx.xu at intel.com>
> ---
> tests/TestSuite_ieee1588.py | 26 ++++++++++++++------------
> 1 file changed, 14 insertions(+), 12 deletions(-)
>
> diff --git a/tests/TestSuite_ieee1588.py b/tests/TestSuite_ieee1588.py
> index 58d9a10..e06b29d 100644
> --- a/tests/TestSuite_ieee1588.py
> +++ b/tests/TestSuite_ieee1588.py
> @@ -80,21 +80,23 @@ class TestIeee1588(TestCase):
> port = self.tester.get_local_port(dutPorts[0])
> itf = self.tester.get_interface(port)
>
> - self.tester.scapy_background()
> - self.tester.scapy_append('p = sniff(iface="%s", count=2)' % itf)
> - self.tester.scapy_append('RESULT = p[1].summary()')
> + #create new session for send packet
> + session_secondary = self.tester.create_session(name =
> 'send_packet')
>
> - # this is the output of sniff
> - # [<Ether dst=01:1b:19:00:00:00 src=00:00:00:00:00:00
> type=0x88f7 |<Raw load='\x00\x02' |>>]
> - self.tester.scapy_foreground()
> - self.tester.scapy_append('nutmac="%s"' % mac)
> -
> self.tester.scapy_append('sendp([Ether(dst=nutmac,type=0x88f7)/"\\x00\\x02
> "], iface="%s")' % itf)
> - self.tester.scapy_append('time.sleep(1)')
> + self.tester.send_expect("tcpdump -i %s -e ether src %s" %
> (itf,mac), "tcpdump", 20)
>
> - self.tester.scapy_execute()
> - out = self.tester.scapy_get_result()
> + session_secondary.send_expect("scapy", "Welcome", 20)
Even "Welcome" can work here, suggest to use scapy default prompt ">>>".
> + session_secondary.send_expect('nutmac="%s"' % mac, ">>> ", 20)
> +
> session_secondary.send_expect('sendp([Ether(dst=nutmac,type=0x88f7)/"\\x00
> \\x02"], iface="%s")' % itf, ">>> ", 20)
Packet module should support 1588 packets, could you try whether below command workable?
pkt = Packet(pkt_type='TIMESYNC')
pkt.send_pkt(tx_port=itf)
> +
> + out = self.tester.get_session_output(timeout=20)
> +
> + session_secondary.send_expect('exit()', "# ", 20)
> +
> + self.tester.send_expect("^C", "# ", 20)
> + self.tester.destroy_session(session_secondary)
> +
> self.verify("0x88f7" in out, "Ether type is not PTP")
> - # self.verify("\\x00\\x02" in out, "Payload wrong in PTP")
>
> time.sleep(1)
> out = self.dut.get_session_output()
> --
> 1.9.3
More information about the dts
mailing list