test suite reviews and discussions
 help / color / mirror / Atom feed
* [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from Vxlan to VXLAN
@ 2019-07-23  0:50 lihong
  2019-07-23  0:50 ` [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan " lihong
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: lihong @ 2019-07-23  0:50 UTC (permalink / raw)
  To: dts; +Cc: lihong

from scapy 2.3.3, the vxlan is supported by default, so unify the
class name between high version and low version.

Signed-off-by: lihong <lihongx.ma@intel.com>
---
 dep/vxlan.py | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/dep/vxlan.py b/dep/vxlan.py
index 8fc914b..d160718 100644
--- a/dep/vxlan.py
+++ b/dep/vxlan.py
@@ -13,16 +13,16 @@ vxlanmagic = "0x8"
 
 VXLAN_PORT=4789
 
-class Vxlan(Packet):
-    name = "Virtual eXtensible Local Area Network"
-    fields_desc = [ByteField("flag", 8),
+class VXLAN(Packet):
+    name = "VXLAN"
+    fields_desc = [ByteField("flags", 8),
                    X3BytesField("reserved1", 0),
                    X3BytesField("vni", 0),
                    ByteField("reserved2", 0)]
 
     def guess_payload_class(self, payload):
         if self.flag == vxlanmagic:
-            return Vxlan
+            return VXLAN
         else:
             return Packet.guess_payload_class(self, payload)
 
@@ -30,5 +30,5 @@ class Vxlan(Packet):
         return self.sprintf("VXLAN (vni=%VXLAN.vni%)")
 
 split_layers(UDP, DNS, sport=53)
-bind_layers(UDP, Vxlan, dport=VXLAN_PORT)
-bind_layers(Vxlan, Ether)
+bind_layers(UDP, VXLAN, dport=VXLAN_PORT)
+bind_layers(VXLAN, Ether)
-- 
2.7.4


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan name from Vxlan to VXLAN
  2019-07-23  0:50 [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from Vxlan to VXLAN lihong
@ 2019-07-23  0:50 ` lihong
  2019-07-23  9:13   ` Zhu, ShuaiX
  2019-07-23  0:50 ` [dts] [PATCH V1 3/3][scapy vxlan] tests: " lihong
  2019-07-23  9:13 ` [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class " Zhu, ShuaiX
  2 siblings, 1 reply; 6+ messages in thread
From: lihong @ 2019-07-23  0:50 UTC (permalink / raw)
  To: dts; +Cc: lihong

depend on dep/vxlan.py, update Vxlan to VXLAN

Signed-off-by: lihong <lihongx.ma@intel.com>
---
 framework/etgen.py       | 12 ++++++------
 framework/packet.py      |  4 ++--
 framework/pktgen_ixia.py | 14 +++++++-------
 3 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/framework/etgen.py b/framework/etgen.py
index cd6829d..212b9c2 100644
--- a/framework/etgen.py
+++ b/framework/etgen.py
@@ -238,19 +238,19 @@ class IxiaPacketGenerator(SSHConnection):
     def parse_pcap(self, fpcap):
         dump_str1 = "cmds = []\n"
         dump_str2 = "for i in rdpcap('%s', -1):\n" % fpcap
-        dump_str3 = "    if 'Vxlan' in i.command():\n" + \
+        dump_str3 = "    if 'VXLAN' in i.command():\n" + \
                     "        vxlan_str = ''\n" + \
-                    "        l = len(i[Vxlan])\n" + \
-                    "        vxlan = str(i[Vxlan])\n" + \
+                    "        l = len(i[VXLAN])\n" + \
+                    "        vxlan = str(i[VXLAN])\n" + \
                     "        first = True\n" + \
                     "        for j in range(l):\n" + \
                     "            if first:\n" + \
-                    "                vxlan_str += \"Vxlan(hexval='%02X\" %ord(vxlan[j])\n" + \
+                    "                vxlan_str += \"VXLAN(hexval='%02X\" %ord(vxlan[j])\n" + \
                     "                first = False\n" + \
                     "            else:\n" + \
                     "                vxlan_str += \" %02X\" %ord(vxlan[j])\n" + \
                     "        vxlan_str += \"\')\"\n" + \
-                    "        command = re.sub(r\"Vxlan(.*)\", vxlan_str, i.command())\n" + \
+                    "        command = re.sub(r\"VXLAN(.*)\", vxlan_str, i.command())\n" + \
                     "    else:\n" + \
                     "        command = i.command()\n" + \
                     "    cmds.append(command)\n" + \
@@ -375,7 +375,7 @@ class IxiaPacketGenerator(SSHConnection):
                 match = pat.match(header)
                 params = eval('dict(%s)' % match.group(2))
                 method_name = match.group(1)
-                if method_name == 'Vxlan':
+                if method_name == 'VXLAN':
                     method = getattr(self, method_name.lower())
                     method(txport, **params)
                     break
diff --git a/framework/packet.py b/framework/packet.py
index d39479f..502d85c 100755
--- a/framework/packet.py
+++ b/framework/packet.py
@@ -65,7 +65,7 @@ DTS_PATH = exec_file.replace('/framework/packet.py', '')
 DEP_FOLDER = DTS_PATH + '/dep'
 sys.path.append(DEP_FOLDER)
 
-from vxlan import Vxlan
+from vxlan import VXLAN
 from nvgre import NVGRE, IPPROTO_NVGRE
 from lldp import LLDP, LLDPManagementAddress
 from Dot1BR import Dot1BR
@@ -123,7 +123,7 @@ class scapy(object):
         'icmp': ICMP(),
         'gre': GRE(),
         'raw': Raw(),
-        'vxlan': Vxlan(),
+        'vxlan': VXLAN(),
 
         'inner_mac': Ether(),
         'inner_vlan': Dot1Q(),
diff --git a/framework/pktgen_ixia.py b/framework/pktgen_ixia.py
index 80481fe..2895c6b 100644
--- a/framework/pktgen_ixia.py
+++ b/framework/pktgen_ixia.py
@@ -141,19 +141,19 @@ class Ixia(SSHConnection):
 
         dump_str1 = "cmds = []\n"
         dump_str2 = "for i in rdpcap('%s', -1):\n" % pcap_path
-        dump_str3 = "    if 'Vxlan' in i.command():\n" + \
+        dump_str3 = "    if 'VXLAN' in i.command():\n" + \
                     "        vxlan_str = ''\n" + \
-                    "        l = len(i[Vxlan])\n" + \
-                    "        vxlan = str(i[Vxlan])\n" + \
+                    "        l = len(i[VXLAN])\n" + \
+                    "        vxlan = str(i[VXLAN])\n" + \
                     "        first = True\n" + \
                     "        for j in range(l):\n" + \
                     "            if first:\n" + \
-                    "                vxlan_str += \"Vxlan(hexval='%02X\" %ord(vxlan[j])\n" + \
+                    "                vxlan_str += \"VXLAN(hexval='%02X\" %ord(vxlan[j])\n" + \
                     "                first = False\n" + \
                     "            else:\n" + \
                     "                vxlan_str += \" %02X\" %ord(vxlan[j])\n" + \
                     "        vxlan_str += \"\')\"\n" + \
-                    "        command = re.sub(r\"Vxlan(.*)\", vxlan_str, i.command())\n" + \
+                    "        command = re.sub(r\"VXLAN(.*)\", vxlan_str, i.command())\n" + \
                     "    else:\n" + \
                     "        command = i.command()\n" + \
                     "    cmds.append(command)\n" + \
@@ -502,7 +502,7 @@ class Ixia(SSHConnection):
                 match = pat.match(header)
                 params = eval('dict(%s)' % match.group(2))
                 method_name = match.group(1)
-                if method_name == 'Vxlan':
+                if method_name == 'VXLAN':
                     method = getattr(self, method_name.lower())
                     method(ixia_port, vm.get('fields_config', {}), **params)
                     break
@@ -1747,4 +1747,4 @@ class IxiaPacketGenerator(PacketGenerator):
         ''' close ixia session '''
         if self._conn is not None:
             self._disconnect()
-        return
\ No newline at end of file
+        return
-- 
2.7.4


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [dts] [PATCH V1 3/3][scapy vxlan] tests: update vxlan name from Vxlan to VXLAN
  2019-07-23  0:50 [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from Vxlan to VXLAN lihong
  2019-07-23  0:50 ` [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan " lihong
@ 2019-07-23  0:50 ` lihong
  2019-07-23  9:14   ` Zhu, ShuaiX
  2019-07-23  9:13 ` [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class " Zhu, ShuaiX
  2 siblings, 1 reply; 6+ messages in thread
From: lihong @ 2019-07-23  0:50 UTC (permalink / raw)
  To: dts; +Cc: lihong

depend on dep/vxlan.py, update Vxlan to VXLAN

Signed-off-by: lihong <lihongx.ma@intel.com>
---
 tests/TestSuite_cloud_filter.py              |  8 +++----
 tests/TestSuite_generic_flow_api.py          | 16 ++++++-------
 tests/TestSuite_tso.py                       |  4 ++--
 tests/TestSuite_vxlan.py                     | 34 ++++++++++++++--------------
 tests/TestSuite_vxlan_gpe_support_in_i40e.py | 12 +++++++---
 tests/TestSuite_vxlan_sample.py              | 20 ++++++++--------
 6 files changed, 50 insertions(+), 44 deletions(-)

diff --git a/tests/TestSuite_cloud_filter.py b/tests/TestSuite_cloud_filter.py
index d4fe129..74b3be7 100644
--- a/tests/TestSuite_cloud_filter.py
+++ b/tests/TestSuite_cloud_filter.py
@@ -17,12 +17,12 @@ from packet import Packet, load_pcapfile
 from scapy.layers.inet import UDP, IP
 from scapy.packet import split_layers, bind_layers
 
-from vxlan import Vxlan
+from vxlan import VXLAN
 from vxlan import VXLAN_PORT
 
 CLOUD_PORT = 8472
-split_layers(UDP, Vxlan, dport=VXLAN_PORT)
-bind_layers(UDP, Vxlan, dport=CLOUD_PORT)
+split_layers(UDP, VXLAN, dport=VXLAN_PORT)
+bind_layers(UDP, VXLAN, dport=CLOUD_PORT)
 
 #
 #
@@ -350,7 +350,7 @@ class TestCloudFilter(TestCase):
                 dport = cap_pkt[UDP].dport
                 self.verify(dport == CLOUD_PORT,
                             "Captured packet is not vxlan packet")
-                inner_ip = cap_pkt[Vxlan][IP].dst
+                inner_ip = cap_pkt['VXLAN'][IP].dst
                 self.verify(inner_ip == cloud_cfg.cf_rule['iip'],
                             "Inner ip not matched")
             except:
diff --git a/tests/TestSuite_generic_flow_api.py b/tests/TestSuite_generic_flow_api.py
index a7810fd..3daf77f 100644
--- a/tests/TestSuite_generic_flow_api.py
+++ b/tests/TestSuite_generic_flow_api.py
@@ -154,7 +154,7 @@ class TestGeneric_flow_api(TestCase):
         dir_module = cwd + r'/' + 'dep'
         self.tester.scapy_append('sys.path.append("%s")' % dir_module)
         if module == "vxlan":
-            self.tester.scapy_append("from vxlan import Vxlan")
+            self.tester.scapy_append("from vxlan import VXLAN")
         elif module == "nvgre":
             self.tester.scapy_append('from nvgre import NVGRE')
 
@@ -312,7 +312,7 @@ class TestGeneric_flow_api(TestCase):
                 rule_created = 1
 
                 # Enable vxlan packet sending
-                if "Vxlan" in flow_pkt:
+                if "VXLAN" in flow_pkt:
                     self.load_module("vxlan")
                 elif "NVGRE" in flow_pkt:
                     self.load_module("nvgre")
@@ -569,10 +569,10 @@ class TestGeneric_flow_api(TestCase):
                 if 'vni' in flows:
                     vni = self.generate_random_int(0, MAX_VLAN)
                     flow_str += "vni is %d " % vni
-                    pkt += "/Vxlan(vni=%d)" % vni
+                    pkt += "/VXLAN(vni=%d)" % vni
                     extrapacket['vni'] = str(vni)
                 else:
-                    pkt += "/Vxlan()"
+                    pkt += "/VXLAN()"
             elif flow_type == "nvgre":
                 flow_str += "/ nvgre "
                 if 'tni' in flows:
@@ -1515,22 +1515,22 @@ class TestGeneric_flow_api(TestCase):
 
         self.load_module("vxlan")
         self.tester.scapy_append(
-            'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan()/Ether(dst="%s")/Dot1Q(vlan=11)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, self.inner_mac, self.tester_itf))
+            'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN()/Ether(dst="%s")/Dot1Q(vlan=11)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, self.inner_mac, self.tester_itf))
         self.verify_result("pf", expect_rxpkts="1", expect_queue=extrapkt_rulenum['queue'][0], verify_mac=self.outer_mac)
 
         self.load_module("vxlan")
         self.tester.scapy_append(
-            'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan(vni=5)/Ether(dst="%s")/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, self.wrong_mac, self.tester_itf))
+            'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN(vni=5)/Ether(dst="%s")/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, self.wrong_mac, self.tester_itf))
         self.verify_result("pf", expect_rxpkts="1", expect_queue="0", verify_mac=self.outer_mac)
 
         self.load_module("vxlan")
         self.tester.scapy_append(
-            'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan(vni=%s)/Ether(dst="%s")/Dot1Q(vlan=%s)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, extra_packet[5]['vni'], self.wrong_mac, extra_packet[5]['invlan'], self.tester_itf))
+            'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN(vni=%s)/Ether(dst="%s")/Dot1Q(vlan=%s)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, extra_packet[5]['vni'], self.wrong_mac, extra_packet[5]['invlan'], self.tester_itf))
         self.verify_result("vf0", expect_rxpkts="1", expect_queue="0", verify_mac=self.outer_mac)
 
         self.load_module("vxlan")
         self.tester.scapy_append(
-            'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan(vni=%s)/Ether(dst="%s")/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.wrong_mac, extra_packet[6]['vni'], self.inner_mac, self.tester_itf))
+            'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN(vni=%s)/Ether(dst="%s")/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.wrong_mac, extra_packet[6]['vni'], self.inner_mac, self.tester_itf))
         self.verify_result("vf1", expect_rxpkts="0", expect_queue="NULL", verify_mac=self.wrong_mac)
         rule_num = extrapkt_rulenum['rulenum']
         self.verify_rulenum(rule_num)
diff --git a/tests/TestSuite_tso.py b/tests/TestSuite_tso.py
index 34294cc..36e00fe 100644
--- a/tests/TestSuite_tso.py
+++ b/tests/TestSuite_tso.py
@@ -104,7 +104,7 @@ class TestTSO(TestCase):
         cwd = os.getcwd()
         dir_module = cwd + r'/' + 'dep'
         self.tester.scapy_append('sys.path.append("%s")' % dir_module)
-        self.tester.scapy_append("from vxlan import Vxlan")
+        self.tester.scapy_append("from vxlan import VXLAN")
         self.tester.scapy_append('from nvgre import NVGRE')
 
     def tcpdump_start_sniffing(self, ifaces=[]):
@@ -300,7 +300,7 @@ class TestTSO(TestCase):
             self.tcpdump_start_sniffing([tx_interface, rx_interface])
             self.load_module()
             out = self.dut.send_expect("clear port info all", "testpmd> ", 120)
-            self.tester.scapy_append('sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/UDP(sport=1021,dport=4789)/Vxlan()/Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")' % (mac, mac, loading_size, tx_interface))
+            self.tester.scapy_append('sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/UDP(sport=1021,dport=4789)/VXLAN()/Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")' % (mac, mac, loading_size, tx_interface))
             out = self.tester.scapy_execute()
             out = self.dut.send_expect("show port stats all", "testpmd> ", 120)
             print out
diff --git a/tests/TestSuite_vxlan.py b/tests/TestSuite_vxlan.py
index 12ab458..4183169 100644
--- a/tests/TestSuite_vxlan.py
+++ b/tests/TestSuite_vxlan.py
@@ -17,7 +17,7 @@ from scapy.utils import wrpcap, rdpcap
 from scapy.layers.inet import Ether, IP, TCP, UDP
 from scapy.layers.inet6 import IPv6
 from scapy.layers.l2 import Dot1Q
-from vxlan import Vxlan
+from vxlan import VXLAN
 from scapy.layers.sctp import SCTP, SCTPChunkData
 from scapy.sendrecv import sniff
 from scapy.config import conf
@@ -178,7 +178,7 @@ class VxlanTestConfig(object):
             outer[UDP].chksum = 1
 
         if self.outer_udp_dst == VXLAN_PORT:
-            self.pkt = outer / Vxlan(vni=self.vni) / inner
+            self.pkt = outer / VXLAN(vni=self.vni) / inner
         else:
             self.pkt = outer / ("X" * self.payload_size)
 
@@ -207,8 +207,8 @@ class VxlanTestConfig(object):
         if payload.guess_payload_class(payload).name == "IP":
             chk_sums['outer_ip'] = hex(payload[IP].chksum)
 
-        if pkts[0].haslayer(Vxlan) == 1:
-            inner = pkts[0][Vxlan]
+        if pkts[0].haslayer('VXLAN') == 1:
+            inner = pkts[0]['VXLAN']
             if inner.haslayer(IP) == 1:
                 chk_sums['inner_ip'] = hex(inner[IP].chksum)
                 if inner[IP].proto == 6:
@@ -240,7 +240,7 @@ class VxlanTestConfig(object):
         cwd = os.getcwd()
         dir_vxlan_module = cwd + r'/' + FOLDERS['Depends']
         self.test_case.tester.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
-        self.test_case.tester.scapy_append("from vxlan import Vxlan")
+        self.test_case.tester.scapy_append("from vxlan import VXLAN")
         self.test_case.tester.scapy_append(
             'pcap = rdpcap("%s")' % self.pcap_file)
         self.test_case.tester.scapy_append(
@@ -341,29 +341,29 @@ class TestVxlan(TestCase, IxiaPacketGenerator):
         self.tunnel_perf = [
             {'Packet': 'Normal', 'tunnel_filter': 'None',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'None',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'None',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan-tenid',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan-tenid',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-tenid',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-tenid',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'omac-imac-tenid',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'omac-imac-tenid',
                 'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'None',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'None',
                 'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan',
                 'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan-tenid',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan-tenid',
                 'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-tenid',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-tenid',
                 'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter': 'imac',
+            {'Packet': 'VXLAN', 'tunnel_filter': 'imac',
                 'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
-            {'Packet': 'Vxlan', 'tunnel_filter':
+            {'Packet': 'VXLAN', 'tunnel_filter':
                 'omac-imac-tenid', 'recvqueue': 'Multi'}
         ]
 
diff --git a/tests/TestSuite_vxlan_gpe_support_in_i40e.py b/tests/TestSuite_vxlan_gpe_support_in_i40e.py
index f87c541..aa3ee82 100644
--- a/tests/TestSuite_vxlan_gpe_support_in_i40e.py
+++ b/tests/TestSuite_vxlan_gpe_support_in_i40e.py
@@ -43,7 +43,7 @@ from pmd_output import PmdOutput
 from scapy.utils import wrpcap, rdpcap
 from scapy.layers.inet import Ether, IP, UDP
 from scapy.layers.l2 import Dot1Q
-from vxlan import Vxlan
+from vxlan import VXLAN
 from scapy.config import conf
 from test_case import TestCase
 from settings import FOLDERS
@@ -110,7 +110,7 @@ class VxlanGpeTestConfig(object):
         outer[UDP].dport = self.outer_udp_dst
 
         if self.outer_udp_dst == VXLAN_GPE_PORT:
-            self.pkt = outer / Vxlan(vni=self.vni) / inner
+            self.pkt = outer / VXLAN(vni=self.vni) / inner
         else:
             self.pkt = outer / ("X" * self.payload_size)
 
@@ -124,7 +124,7 @@ class VxlanGpeTestConfig(object):
         cwd = os.getcwd()
         dir_vxlan_module = cwd + r'/' + FOLDERS['Depends']
         self.test_case.tester.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
-        self.test_case.tester.scapy_append("from vxlan import Vxlan")
+        self.test_case.tester.scapy_append("from vxlan import VXLAN")
         self.test_case.tester.scapy_append(
             'pcap = rdpcap("%s")' % self.pcap_file)
         self.test_case.tester.scapy_append(
@@ -231,6 +231,10 @@ class TestVxlanGpeSupportInI40e(TestCase):
         # send one VXLAN-GPE type packet
         packet = 'sendp([Ether(dst="%s")/IP(src="18.0.0.1")/UDP(dport=%d, sport=43)/' % (mac, VXLAN_GPE_PORT) + \
                  'VXLAN(flags=12)/IP(src="10.0.0.1")], iface="%s", count=1)' % self.tester_iface
+        cwd = os.getcwd()
+        dir_vxlan_module = cwd + r'/' + FOLDERS['Depends']
+        self.tester.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
+        self.tester.scapy_append("from vxlan import VXLAN")
         self.tester.scapy_append(packet)
         self.tester.scapy_execute()
         out = self.dut.get_session_output(timeout=5)
@@ -239,6 +243,8 @@ class TestVxlanGpeSupportInI40e(TestCase):
 
         # delete the VXLAN-GPE packet type, testpmd should treat the packet as a normal UDP packet
         self.pmdout.execute_cmd('port config 0 udp_tunnel_port rm vxlan-gpe %s' % VXLAN_GPE_PORT)
+        self.tester.scapy_append("sys.path.append('%s')" % dir_vxlan_module)
+        self.tester.scapy_append("from vxlan import VXLAN")
         self.tester.scapy_append(packet)
         self.tester.scapy_execute()
         out = self.dut.get_session_output(timeout=5)
diff --git a/tests/TestSuite_vxlan_sample.py b/tests/TestSuite_vxlan_sample.py
index 2033866..5bc9269 100644
--- a/tests/TestSuite_vxlan_sample.py
+++ b/tests/TestSuite_vxlan_sample.py
@@ -54,7 +54,7 @@ from scapy.utils import wrpcap, rdpcap
 from scapy.layers.inet import Ether, IP, TCP, UDP
 from scapy.layers.inet6 import IPv6
 from scapy.layers.l2 import Dot1Q
-from vxlan import Vxlan
+from vxlan import VXLAN
 from scapy.layers.sctp import SCTP, SCTPChunkData
 from scapy.sendrecv import sniff
 from scapy.config import conf
@@ -310,10 +310,10 @@ class TestVxlanSample(TestCase):
 
             pkts = self.transfer_capture_file()
             self.verify(len(pkts) >= 1, "Failed to capture packets")
-            self.verify(pkts[0].haslayer(Vxlan) == 1,
+            self.verify(pkts[0].haslayer('VXLAN') == 1,
                         "Packet not encapsulated")
             try:
-                payload = str(pkts[0][UDP][Vxlan][UDP].payload)
+                payload = str(pkts[0][UDP]['VXLAN'][UDP].payload)
                 for i in range(18):
                     self.verify(ord(payload[i]) == 88, "Check udp data failed")
             except:
@@ -344,7 +344,7 @@ class TestVxlanSample(TestCase):
             pkts = self.transfer_capture_file()
             # check packet number and payload
             self.verify(len(pkts) >= 1, "Failed to capture packets")
-            self.verify(pkts[0].haslayer(Vxlan) == 0,
+            self.verify(pkts[0].haslayer('VXLAN') == 0,
                         "Packet not de-encapsulated")
 
             try:
@@ -380,10 +380,10 @@ class TestVxlanSample(TestCase):
 
             # check packet number and payload
             self.verify(len(pkts) >= 1, "Failed to capture packets")
-            self.verify(pkts[0].haslayer(Vxlan) == 1,
+            self.verify(pkts[0].haslayer('VXLAN') == 1,
                         "Packet not encapsulated")
             try:
-                payload = str(pkts[0][UDP][Vxlan][UDP].payload)
+                payload = str(pkts[0][UDP]['VXLAN'][UDP].payload)
                 for i in range(18):
                     self.verify(ord(payload[i]) == 88, "Check udp data failed")
             except:
@@ -428,7 +428,7 @@ class TestVxlanSample(TestCase):
             pkts = self.transfer_capture_file()
             # check packet number and payload
             self.verify(len(pkts) >= 1, "Failed to capture packets")
-            self.verify(pkts[0].haslayer(Vxlan) == 1,
+            self.verify(pkts[0].haslayer('VXLAN') == 1,
                         "Packet not encapsulated")
             chksums = vxlan_pkt.get_chksums(pcap='vxlan_cap.pcap')
             print utils.GREEN("Checksum : %s" % chksums)
@@ -466,7 +466,7 @@ class TestVxlanSample(TestCase):
 
             # calculation  checksum, and check it
             for pkt in pkts:
-                inner = pkt[Vxlan]
+                inner = pkt['VXLAN']
                 inner_ip_chksum = inner[IP].chksum
                 del inner.chksum
                 inner[IP] = inner[IP].__class__(str(inner[IP]))
@@ -484,10 +484,10 @@ class TestVxlanSample(TestCase):
 
             length = 0
             for pkt in pkts:
-                self.verify(pkt.haslayer(Vxlan) == 1,
+                self.verify(pkt.haslayer('VXLAN') == 1,
                             "Packet not encapsulated")
                 try:
-                    payload = str(pkt[UDP][Vxlan][TCP].payload)
+                    payload = str(pkt[UDP]['VXLAN'][TCP].payload)
                     self.verify(len(payload) <= self.def_mss,
                                 "TCP payload oversized")
                     length += len(payload)
-- 
2.7.4


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from Vxlan to VXLAN
  2019-07-23  0:50 [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from Vxlan to VXLAN lihong
  2019-07-23  0:50 ` [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan " lihong
  2019-07-23  0:50 ` [dts] [PATCH V1 3/3][scapy vxlan] tests: " lihong
@ 2019-07-23  9:13 ` Zhu, ShuaiX
  2 siblings, 0 replies; 6+ messages in thread
From: Zhu, ShuaiX @ 2019-07-23  9:13 UTC (permalink / raw)
  To: Ma, LihongX, dts; +Cc: Ma, LihongX, Zhu, ShuaiX

Tested-by: Zhu, ShuaiX <shuaix.zhu@intel.com>

> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of lihong
> Sent: Tuesday, July 23, 2019 8:51 AM
> To: dts@dpdk.org
> Cc: Ma, LihongX <lihongx.ma@intel.com>
> Subject: [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from
> Vxlan to VXLAN
> 
> from scapy 2.3.3, the vxlan is supported by default, so unify the class name
> between high version and low version.
> 
> Signed-off-by: lihong <lihongx.ma@intel.com>
> ---
>  dep/vxlan.py | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/dep/vxlan.py b/dep/vxlan.py index 8fc914b..d160718 100644
> --- a/dep/vxlan.py
> +++ b/dep/vxlan.py
> @@ -13,16 +13,16 @@ vxlanmagic = "0x8"
> 
>  VXLAN_PORT=4789
> 
> -class Vxlan(Packet):
> -    name = "Virtual eXtensible Local Area Network"
> -    fields_desc = [ByteField("flag", 8),
> +class VXLAN(Packet):
> +    name = "VXLAN"
> +    fields_desc = [ByteField("flags", 8),
>                     X3BytesField("reserved1", 0),
>                     X3BytesField("vni", 0),
>                     ByteField("reserved2", 0)]
> 
>      def guess_payload_class(self, payload):
>          if self.flag == vxlanmagic:
> -            return Vxlan
> +            return VXLAN
>          else:
>              return Packet.guess_payload_class(self, payload)
> 
> @@ -30,5 +30,5 @@ class Vxlan(Packet):
>          return self.sprintf("VXLAN (vni=%VXLAN.vni%)")
> 
>  split_layers(UDP, DNS, sport=53)
> -bind_layers(UDP, Vxlan, dport=VXLAN_PORT) -bind_layers(Vxlan, Ether)
> +bind_layers(UDP, VXLAN, dport=VXLAN_PORT) bind_layers(VXLAN, Ether)
> --
> 2.7.4


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan name from Vxlan to VXLAN
  2019-07-23  0:50 ` [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan " lihong
@ 2019-07-23  9:13   ` Zhu, ShuaiX
  0 siblings, 0 replies; 6+ messages in thread
From: Zhu, ShuaiX @ 2019-07-23  9:13 UTC (permalink / raw)
  To: Ma, LihongX, dts; +Cc: Ma, LihongX, Zhu, ShuaiX

Tested-by: Zhu, ShuaiX <shuaix.zhu@intel.com>

> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of lihong
> Sent: Tuesday, July 23, 2019 8:51 AM
> To: dts@dpdk.org
> Cc: Ma, LihongX <lihongx.ma@intel.com>
> Subject: [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan name from
> Vxlan to VXLAN
> 
> depend on dep/vxlan.py, update Vxlan to VXLAN
> 
> Signed-off-by: lihong <lihongx.ma@intel.com>
> ---
>  framework/etgen.py       | 12 ++++++------
>  framework/packet.py      |  4 ++--
>  framework/pktgen_ixia.py | 14 +++++++-------
>  3 files changed, 15 insertions(+), 15 deletions(-)
> 
> diff --git a/framework/etgen.py b/framework/etgen.py index cd6829d..212b9c2
> 100644
> --- a/framework/etgen.py
> +++ b/framework/etgen.py
> @@ -238,19 +238,19 @@ class IxiaPacketGenerator(SSHConnection):
>      def parse_pcap(self, fpcap):
>          dump_str1 = "cmds = []\n"
>          dump_str2 = "for i in rdpcap('%s', -1):\n" % fpcap
> -        dump_str3 = "    if 'Vxlan' in i.command():\n" + \
> +        dump_str3 = "    if 'VXLAN' in i.command():\n" + \
>                      "        vxlan_str = ''\n" + \
> -                    "        l = len(i[Vxlan])\n" + \
> -                    "        vxlan = str(i[Vxlan])\n" + \
> +                    "        l = len(i[VXLAN])\n" + \
> +                    "        vxlan = str(i[VXLAN])\n" + \
>                      "        first = True\n" + \
>                      "        for j in range(l):\n" + \
>                      "            if first:\n" + \
> -                    "                vxlan_str +=
> \"Vxlan(hexval='%02X\" %ord(vxlan[j])\n" + \
> +                    "                vxlan_str +=
> \"VXLAN(hexval='%02X\" %ord(vxlan[j])\n" + \
>                      "                first = False\n" + \
>                      "            else:\n" + \
>                      "                vxlan_str +=
> \" %02X\" %ord(vxlan[j])\n" + \
>                      "        vxlan_str += \"\')\"\n" + \
> -                    "        command = re.sub(r\"Vxlan(.*)\", vxlan_str,
> i.command())\n" + \
> +                    "        command = re.sub(r\"VXLAN(.*)\", vxlan_str,
> i.command())\n" + \
>                      "    else:\n" + \
>                      "        command = i.command()\n" + \
>                      "    cmds.append(command)\n" + \
> @@ -375,7 +375,7 @@ class IxiaPacketGenerator(SSHConnection):
>                  match = pat.match(header)
>                  params = eval('dict(%s)' % match.group(2))
>                  method_name = match.group(1)
> -                if method_name == 'Vxlan':
> +                if method_name == 'VXLAN':
>                      method = getattr(self, method_name.lower())
>                      method(txport, **params)
>                      break
> diff --git a/framework/packet.py b/framework/packet.py index d39479f..502d85c
> 100755
> --- a/framework/packet.py
> +++ b/framework/packet.py
> @@ -65,7 +65,7 @@ DTS_PATH = exec_file.replace('/framework/packet.py', '')
> DEP_FOLDER = DTS_PATH + '/dep'
>  sys.path.append(DEP_FOLDER)
> 
> -from vxlan import Vxlan
> +from vxlan import VXLAN
>  from nvgre import NVGRE, IPPROTO_NVGRE
>  from lldp import LLDP, LLDPManagementAddress  from Dot1BR import Dot1BR
> @@ -123,7 +123,7 @@ class scapy(object):
>          'icmp': ICMP(),
>          'gre': GRE(),
>          'raw': Raw(),
> -        'vxlan': Vxlan(),
> +        'vxlan': VXLAN(),
> 
>          'inner_mac': Ether(),
>          'inner_vlan': Dot1Q(),
> diff --git a/framework/pktgen_ixia.py b/framework/pktgen_ixia.py index
> 80481fe..2895c6b 100644
> --- a/framework/pktgen_ixia.py
> +++ b/framework/pktgen_ixia.py
> @@ -141,19 +141,19 @@ class Ixia(SSHConnection):
> 
>          dump_str1 = "cmds = []\n"
>          dump_str2 = "for i in rdpcap('%s', -1):\n" % pcap_path
> -        dump_str3 = "    if 'Vxlan' in i.command():\n" + \
> +        dump_str3 = "    if 'VXLAN' in i.command():\n" + \
>                      "        vxlan_str = ''\n" + \
> -                    "        l = len(i[Vxlan])\n" + \
> -                    "        vxlan = str(i[Vxlan])\n" + \
> +                    "        l = len(i[VXLAN])\n" + \
> +                    "        vxlan = str(i[VXLAN])\n" + \
>                      "        first = True\n" + \
>                      "        for j in range(l):\n" + \
>                      "            if first:\n" + \
> -                    "                vxlan_str +=
> \"Vxlan(hexval='%02X\" %ord(vxlan[j])\n" + \
> +                    "                vxlan_str +=
> \"VXLAN(hexval='%02X\" %ord(vxlan[j])\n" + \
>                      "                first = False\n" + \
>                      "            else:\n" + \
>                      "                vxlan_str +=
> \" %02X\" %ord(vxlan[j])\n" + \
>                      "        vxlan_str += \"\')\"\n" + \
> -                    "        command = re.sub(r\"Vxlan(.*)\", vxlan_str,
> i.command())\n" + \
> +                    "        command = re.sub(r\"VXLAN(.*)\", vxlan_str,
> i.command())\n" + \
>                      "    else:\n" + \
>                      "        command = i.command()\n" + \
>                      "    cmds.append(command)\n" + \
> @@ -502,7 +502,7 @@ class Ixia(SSHConnection):
>                  match = pat.match(header)
>                  params = eval('dict(%s)' % match.group(2))
>                  method_name = match.group(1)
> -                if method_name == 'Vxlan':
> +                if method_name == 'VXLAN':
>                      method = getattr(self, method_name.lower())
>                      method(ixia_port, vm.get('fields_config', {}), **params)
>                      break
> @@ -1747,4 +1747,4 @@ class IxiaPacketGenerator(PacketGenerator):
>          ''' close ixia session '''
>          if self._conn is not None:
>              self._disconnect()
> -        return
> \ No newline at end of file
> +        return
> --
> 2.7.4


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dts] [PATCH V1 3/3][scapy vxlan] tests: update vxlan name from Vxlan to VXLAN
  2019-07-23  0:50 ` [dts] [PATCH V1 3/3][scapy vxlan] tests: " lihong
@ 2019-07-23  9:14   ` Zhu, ShuaiX
  0 siblings, 0 replies; 6+ messages in thread
From: Zhu, ShuaiX @ 2019-07-23  9:14 UTC (permalink / raw)
  To: Ma, LihongX, dts; +Cc: Ma, LihongX, Zhu, ShuaiX

Tested-by: Zhu, ShuaiX <shuaix.zhu@intel.com>

> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of lihong
> Sent: Tuesday, July 23, 2019 8:51 AM
> To: dts@dpdk.org
> Cc: Ma, LihongX <lihongx.ma@intel.com>
> Subject: [dts] [PATCH V1 3/3][scapy vxlan] tests: update vxlan name from Vxlan
> to VXLAN
> 
> depend on dep/vxlan.py, update Vxlan to VXLAN
> 
> Signed-off-by: lihong <lihongx.ma@intel.com>
> ---
>  tests/TestSuite_cloud_filter.py              |  8 +++----
>  tests/TestSuite_generic_flow_api.py          | 16 ++++++-------
>  tests/TestSuite_tso.py                       |  4 ++--
>  tests/TestSuite_vxlan.py                     | 34
> ++++++++++++++--------------
>  tests/TestSuite_vxlan_gpe_support_in_i40e.py | 12 +++++++---
>  tests/TestSuite_vxlan_sample.py              | 20 ++++++++--------
>  6 files changed, 50 insertions(+), 44 deletions(-)
> 
> diff --git a/tests/TestSuite_cloud_filter.py b/tests/TestSuite_cloud_filter.py
> index d4fe129..74b3be7 100644
> --- a/tests/TestSuite_cloud_filter.py
> +++ b/tests/TestSuite_cloud_filter.py
> @@ -17,12 +17,12 @@ from packet import Packet, load_pcapfile  from
> scapy.layers.inet import UDP, IP  from scapy.packet import split_layers,
> bind_layers
> 
> -from vxlan import Vxlan
> +from vxlan import VXLAN
>  from vxlan import VXLAN_PORT
> 
>  CLOUD_PORT = 8472
> -split_layers(UDP, Vxlan, dport=VXLAN_PORT) -bind_layers(UDP, Vxlan,
> dport=CLOUD_PORT)
> +split_layers(UDP, VXLAN, dport=VXLAN_PORT) bind_layers(UDP, VXLAN,
> +dport=CLOUD_PORT)
> 
>  #
>  #
> @@ -350,7 +350,7 @@ class TestCloudFilter(TestCase):
>                  dport = cap_pkt[UDP].dport
>                  self.verify(dport == CLOUD_PORT,
>                              "Captured packet is not vxlan packet")
> -                inner_ip = cap_pkt[Vxlan][IP].dst
> +                inner_ip = cap_pkt['VXLAN'][IP].dst
>                  self.verify(inner_ip == cloud_cfg.cf_rule['iip'],
>                              "Inner ip not matched")
>              except:
> diff --git a/tests/TestSuite_generic_flow_api.py
> b/tests/TestSuite_generic_flow_api.py
> index a7810fd..3daf77f 100644
> --- a/tests/TestSuite_generic_flow_api.py
> +++ b/tests/TestSuite_generic_flow_api.py
> @@ -154,7 +154,7 @@ class TestGeneric_flow_api(TestCase):
>          dir_module = cwd + r'/' + 'dep'
>          self.tester.scapy_append('sys.path.append("%s")' % dir_module)
>          if module == "vxlan":
> -            self.tester.scapy_append("from vxlan import Vxlan")
> +            self.tester.scapy_append("from vxlan import VXLAN")
>          elif module == "nvgre":
>              self.tester.scapy_append('from nvgre import NVGRE')
> 
> @@ -312,7 +312,7 @@ class TestGeneric_flow_api(TestCase):
>                  rule_created = 1
> 
>                  # Enable vxlan packet sending
> -                if "Vxlan" in flow_pkt:
> +                if "VXLAN" in flow_pkt:
>                      self.load_module("vxlan")
>                  elif "NVGRE" in flow_pkt:
>                      self.load_module("nvgre") @@ -569,10 +569,10 @@
> class TestGeneric_flow_api(TestCase):
>                  if 'vni' in flows:
>                      vni = self.generate_random_int(0, MAX_VLAN)
>                      flow_str += "vni is %d " % vni
> -                    pkt += "/Vxlan(vni=%d)" % vni
> +                    pkt += "/VXLAN(vni=%d)" % vni
>                      extrapacket['vni'] = str(vni)
>                  else:
> -                    pkt += "/Vxlan()"
> +                    pkt += "/VXLAN()"
>              elif flow_type == "nvgre":
>                  flow_str += "/ nvgre "
>                  if 'tni' in flows:
> @@ -1515,22 +1515,22 @@ class TestGeneric_flow_api(TestCase):
> 
>          self.load_module("vxlan")
>          self.tester.scapy_append(
> -
> 'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan()/Ether(dst="%s")/Dot1Q(vlan=11)/I
> P()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, self.inner_mac,
> self.tester_itf))
> +
> + 'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN()/Ether(dst="%s")/Dot1Q(vlan=
> + 11)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac,
> + self.inner_mac, self.tester_itf))
>          self.verify_result("pf", expect_rxpkts="1",
> expect_queue=extrapkt_rulenum['queue'][0], verify_mac=self.outer_mac)
> 
>          self.load_module("vxlan")
>          self.tester.scapy_append(
> -
> 'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan(vni=5)/Ether(dst="%s")/IP()/TCP()/R
> aw("x" * 20)], iface="%s")' % (self.outer_mac, self.wrong_mac, self.tester_itf))
> +
> + 'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN(vni=5)/Ether(dst="%s")/IP()/T
> + CP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac, self.wrong_mac,
> + self.tester_itf))
>          self.verify_result("pf", expect_rxpkts="1", expect_queue="0",
> verify_mac=self.outer_mac)
> 
>          self.load_module("vxlan")
>          self.tester.scapy_append(
> -
> 'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan(vni=%s)/Ether(dst="%s")/Dot1Q(vlan
> =%s)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac,
> extra_packet[5]['vni'], self.wrong_mac, extra_packet[5]['invlan'], self.tester_itf))
> +
> + 'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN(vni=%s)/Ether(dst="%s")/Dot1Q
> + (vlan=%s)/IP()/TCP()/Raw("x" * 20)], iface="%s")' % (self.outer_mac,
> + extra_packet[5]['vni'], self.wrong_mac, extra_packet[5]['invlan'],
> + self.tester_itf))
>          self.verify_result("vf0", expect_rxpkts="1", expect_queue="0",
> verify_mac=self.outer_mac)
> 
>          self.load_module("vxlan")
>          self.tester.scapy_append(
> -
> 'sendp([Ether(dst="%s")/IP()/UDP()/Vxlan(vni=%s)/Ether(dst="%s")/IP()/TCP()/
> Raw("x" * 20)], iface="%s")' % (self.wrong_mac, extra_packet[6]['vni'],
> self.inner_mac, self.tester_itf))
> +
> + 'sendp([Ether(dst="%s")/IP()/UDP()/VXLAN(vni=%s)/Ether(dst="%s")/IP()/
> + TCP()/Raw("x" * 20)], iface="%s")' % (self.wrong_mac,
> + extra_packet[6]['vni'], self.inner_mac, self.tester_itf))
>          self.verify_result("vf1", expect_rxpkts="0", expect_queue="NULL",
> verify_mac=self.wrong_mac)
>          rule_num = extrapkt_rulenum['rulenum']
>          self.verify_rulenum(rule_num)
> diff --git a/tests/TestSuite_tso.py b/tests/TestSuite_tso.py index
> 34294cc..36e00fe 100644
> --- a/tests/TestSuite_tso.py
> +++ b/tests/TestSuite_tso.py
> @@ -104,7 +104,7 @@ class TestTSO(TestCase):
>          cwd = os.getcwd()
>          dir_module = cwd + r'/' + 'dep'
>          self.tester.scapy_append('sys.path.append("%s")' % dir_module)
> -        self.tester.scapy_append("from vxlan import Vxlan")
> +        self.tester.scapy_append("from vxlan import VXLAN")
>          self.tester.scapy_append('from nvgre import NVGRE')
> 
>      def tcpdump_start_sniffing(self, ifaces=[]):
> @@ -300,7 +300,7 @@ class TestTSO(TestCase):
>              self.tcpdump_start_sniffing([tx_interface, rx_interface])
>              self.load_module()
>              out = self.dut.send_expect("clear port info all", "testpmd> ", 120)
> -
> self.tester.scapy_append('sendp([Ether(dst="%s",src="52:00:00:00:00:00")/IP(sr
> c="192.168.1.1",dst="192.168.1.2")/UDP(sport=1021,dport=4789)/Vxlan()/Ether(
> dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",dst="192.168.1.2")/TCP(s
> port=1021,dport=1021)/("X"*%s)], iface="%s")' % (mac, mac, loading_size,
> tx_interface))
> +
> + self.tester.scapy_append('sendp([Ether(dst="%s",src="52:00:00:00:00:00
> + ")/IP(src="192.168.1.1",dst="192.168.1.2")/UDP(sport=1021,dport=4789)/
> + VXLAN()/Ether(dst="%s",src="52:00:00:00:00:00")/IP(src="192.168.1.1",d
> + st="192.168.1.2")/TCP(sport=1021,dport=1021)/("X"*%s)], iface="%s")' %
> + (mac, mac, loading_size, tx_interface))
>              out = self.tester.scapy_execute()
>              out = self.dut.send_expect("show port stats all", "testpmd> ",
> 120)
>              print out
> diff --git a/tests/TestSuite_vxlan.py b/tests/TestSuite_vxlan.py index
> 12ab458..4183169 100644
> --- a/tests/TestSuite_vxlan.py
> +++ b/tests/TestSuite_vxlan.py
> @@ -17,7 +17,7 @@ from scapy.utils import wrpcap, rdpcap  from
> scapy.layers.inet import Ether, IP, TCP, UDP  from scapy.layers.inet6 import IPv6
> from scapy.layers.l2 import Dot1Q -from vxlan import Vxlan
> +from vxlan import VXLAN
>  from scapy.layers.sctp import SCTP, SCTPChunkData  from scapy.sendrecv
> import sniff  from scapy.config import conf @@ -178,7 +178,7 @@ class
> VxlanTestConfig(object):
>              outer[UDP].chksum = 1
> 
>          if self.outer_udp_dst == VXLAN_PORT:
> -            self.pkt = outer / Vxlan(vni=self.vni) / inner
> +            self.pkt = outer / VXLAN(vni=self.vni) / inner
>          else:
>              self.pkt = outer / ("X" * self.payload_size)
> 
> @@ -207,8 +207,8 @@ class VxlanTestConfig(object):
>          if payload.guess_payload_class(payload).name == "IP":
>              chk_sums['outer_ip'] = hex(payload[IP].chksum)
> 
> -        if pkts[0].haslayer(Vxlan) == 1:
> -            inner = pkts[0][Vxlan]
> +        if pkts[0].haslayer('VXLAN') == 1:
> +            inner = pkts[0]['VXLAN']
>              if inner.haslayer(IP) == 1:
>                  chk_sums['inner_ip'] = hex(inner[IP].chksum)
>                  if inner[IP].proto == 6:
> @@ -240,7 +240,7 @@ class VxlanTestConfig(object):
>          cwd = os.getcwd()
>          dir_vxlan_module = cwd + r'/' + FOLDERS['Depends']
>          self.test_case.tester.scapy_append("sys.path.append('%s')" %
> dir_vxlan_module)
> -        self.test_case.tester.scapy_append("from vxlan import Vxlan")
> +        self.test_case.tester.scapy_append("from vxlan import VXLAN")
>          self.test_case.tester.scapy_append(
>              'pcap = rdpcap("%s")' % self.pcap_file)
>          self.test_case.tester.scapy_append(
> @@ -341,29 +341,29 @@ class TestVxlan(TestCase, IxiaPacketGenerator):
>          self.tunnel_perf = [
>              {'Packet': 'Normal', 'tunnel_filter': 'None',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'None',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'None',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan-tenid',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan-tenid',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-tenid',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-tenid',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'omac-imac-tenid',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'omac-imac-tenid',
>                  'recvqueue': 'Single', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'None',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'None',
>                  'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan',
>                  'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-ivlan-tenid',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-ivlan-tenid',
>                  'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac-tenid',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac-tenid',
>                  'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter': 'imac',
> +            {'Packet': 'VXLAN', 'tunnel_filter': 'imac',
>                  'recvqueue': 'Multi', 'Mpps': {}, 'pct': {}},
> -            {'Packet': 'Vxlan', 'tunnel_filter':
> +            {'Packet': 'VXLAN', 'tunnel_filter':
>                  'omac-imac-tenid', 'recvqueue': 'Multi'}
>          ]
> 
> diff --git a/tests/TestSuite_vxlan_gpe_support_in_i40e.py
> b/tests/TestSuite_vxlan_gpe_support_in_i40e.py
> index f87c541..aa3ee82 100644
> --- a/tests/TestSuite_vxlan_gpe_support_in_i40e.py
> +++ b/tests/TestSuite_vxlan_gpe_support_in_i40e.py
> @@ -43,7 +43,7 @@ from pmd_output import PmdOutput  from scapy.utils
> import wrpcap, rdpcap  from scapy.layers.inet import Ether, IP, UDP  from
> scapy.layers.l2 import Dot1Q -from vxlan import Vxlan
> +from vxlan import VXLAN
>  from scapy.config import conf
>  from test_case import TestCase
>  from settings import FOLDERS
> @@ -110,7 +110,7 @@ class VxlanGpeTestConfig(object):
>          outer[UDP].dport = self.outer_udp_dst
> 
>          if self.outer_udp_dst == VXLAN_GPE_PORT:
> -            self.pkt = outer / Vxlan(vni=self.vni) / inner
> +            self.pkt = outer / VXLAN(vni=self.vni) / inner
>          else:
>              self.pkt = outer / ("X" * self.payload_size)
> 
> @@ -124,7 +124,7 @@ class VxlanGpeTestConfig(object):
>          cwd = os.getcwd()
>          dir_vxlan_module = cwd + r'/' + FOLDERS['Depends']
>          self.test_case.tester.scapy_append("sys.path.append('%s')" %
> dir_vxlan_module)
> -        self.test_case.tester.scapy_append("from vxlan import Vxlan")
> +        self.test_case.tester.scapy_append("from vxlan import VXLAN")
>          self.test_case.tester.scapy_append(
>              'pcap = rdpcap("%s")' % self.pcap_file)
>          self.test_case.tester.scapy_append(
> @@ -231,6 +231,10 @@ class TestVxlanGpeSupportInI40e(TestCase):
>          # send one VXLAN-GPE type packet
>          packet = 'sendp([Ether(dst="%s")/IP(src="18.0.0.1")/UDP(dport=%d,
> sport=43)/' % (mac, VXLAN_GPE_PORT) + \
>                   'VXLAN(flags=12)/IP(src="10.0.0.1")], iface="%s", count=1)' %
> self.tester_iface
> +        cwd = os.getcwd()
> +        dir_vxlan_module = cwd + r'/' + FOLDERS['Depends']
> +        self.tester.scapy_append("sys.path.append('%s')" %
> dir_vxlan_module)
> +        self.tester.scapy_append("from vxlan import VXLAN")
>          self.tester.scapy_append(packet)
>          self.tester.scapy_execute()
>          out = self.dut.get_session_output(timeout=5)
> @@ -239,6 +243,8 @@ class TestVxlanGpeSupportInI40e(TestCase):
> 
>          # delete the VXLAN-GPE packet type, testpmd should treat the packet
> as a normal UDP packet
>          self.pmdout.execute_cmd('port config 0 udp_tunnel_port rm
> vxlan-gpe %s' % VXLAN_GPE_PORT)
> +        self.tester.scapy_append("sys.path.append('%s')" %
> dir_vxlan_module)
> +        self.tester.scapy_append("from vxlan import VXLAN")
>          self.tester.scapy_append(packet)
>          self.tester.scapy_execute()
>          out = self.dut.get_session_output(timeout=5)
> diff --git a/tests/TestSuite_vxlan_sample.py b/tests/TestSuite_vxlan_sample.py
> index 2033866..5bc9269 100644
> --- a/tests/TestSuite_vxlan_sample.py
> +++ b/tests/TestSuite_vxlan_sample.py
> @@ -54,7 +54,7 @@ from scapy.utils import wrpcap, rdpcap  from
> scapy.layers.inet import Ether, IP, TCP, UDP  from scapy.layers.inet6 import IPv6
> from scapy.layers.l2 import Dot1Q -from vxlan import Vxlan
> +from vxlan import VXLAN
>  from scapy.layers.sctp import SCTP, SCTPChunkData  from scapy.sendrecv
> import sniff  from scapy.config import conf @@ -310,10 +310,10 @@ class
> TestVxlanSample(TestCase):
> 
>              pkts = self.transfer_capture_file()
>              self.verify(len(pkts) >= 1, "Failed to capture packets")
> -            self.verify(pkts[0].haslayer(Vxlan) == 1,
> +            self.verify(pkts[0].haslayer('VXLAN') == 1,
>                          "Packet not encapsulated")
>              try:
> -                payload = str(pkts[0][UDP][Vxlan][UDP].payload)
> +                payload = str(pkts[0][UDP]['VXLAN'][UDP].payload)
>                  for i in range(18):
>                      self.verify(ord(payload[i]) == 88, "Check udp data
> failed")
>              except:
> @@ -344,7 +344,7 @@ class TestVxlanSample(TestCase):
>              pkts = self.transfer_capture_file()
>              # check packet number and payload
>              self.verify(len(pkts) >= 1, "Failed to capture packets")
> -            self.verify(pkts[0].haslayer(Vxlan) == 0,
> +            self.verify(pkts[0].haslayer('VXLAN') == 0,
>                          "Packet not de-encapsulated")
> 
>              try:
> @@ -380,10 +380,10 @@ class TestVxlanSample(TestCase):
> 
>              # check packet number and payload
>              self.verify(len(pkts) >= 1, "Failed to capture packets")
> -            self.verify(pkts[0].haslayer(Vxlan) == 1,
> +            self.verify(pkts[0].haslayer('VXLAN') == 1,
>                          "Packet not encapsulated")
>              try:
> -                payload = str(pkts[0][UDP][Vxlan][UDP].payload)
> +                payload = str(pkts[0][UDP]['VXLAN'][UDP].payload)
>                  for i in range(18):
>                      self.verify(ord(payload[i]) == 88, "Check udp data
> failed")
>              except:
> @@ -428,7 +428,7 @@ class TestVxlanSample(TestCase):
>              pkts = self.transfer_capture_file()
>              # check packet number and payload
>              self.verify(len(pkts) >= 1, "Failed to capture packets")
> -            self.verify(pkts[0].haslayer(Vxlan) == 1,
> +            self.verify(pkts[0].haslayer('VXLAN') == 1,
>                          "Packet not encapsulated")
>              chksums = vxlan_pkt.get_chksums(pcap='vxlan_cap.pcap')
>              print utils.GREEN("Checksum : %s" % chksums) @@ -466,7 +466,7
> @@ class TestVxlanSample(TestCase):
> 
>              # calculation  checksum, and check it
>              for pkt in pkts:
> -                inner = pkt[Vxlan]
> +                inner = pkt['VXLAN']
>                  inner_ip_chksum = inner[IP].chksum
>                  del inner.chksum
>                  inner[IP] = inner[IP].__class__(str(inner[IP]))
> @@ -484,10 +484,10 @@ class TestVxlanSample(TestCase):
> 
>              length = 0
>              for pkt in pkts:
> -                self.verify(pkt.haslayer(Vxlan) == 1,
> +                self.verify(pkt.haslayer('VXLAN') == 1,
>                              "Packet not encapsulated")
>                  try:
> -                    payload = str(pkt[UDP][Vxlan][TCP].payload)
> +                    payload = str(pkt[UDP]['VXLAN'][TCP].payload)
>                      self.verify(len(payload) <= self.def_mss,
>                                  "TCP payload oversized")
>                      length += len(payload)
> --
> 2.7.4


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-07-23  9:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-23  0:50 [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class name from Vxlan to VXLAN lihong
2019-07-23  0:50 ` [dts] [PATCH V1 2/3][scapy vxlan] framework: update vxlan " lihong
2019-07-23  9:13   ` Zhu, ShuaiX
2019-07-23  0:50 ` [dts] [PATCH V1 3/3][scapy vxlan] tests: " lihong
2019-07-23  9:14   ` Zhu, ShuaiX
2019-07-23  9:13 ` [dts] [PATCH V1 1/3][scapy vxlan] dep/vxlan: modify class " Zhu, ShuaiX

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).