ikev2: support responder hostname
[vpp.git] / test / vpp_sub_interface.py
index 4961ba5..21560cb 100644 (file)
@@ -1,8 +1,8 @@
 from scapy.layers.l2 import Dot1Q
 import abc
-import six
 from vpp_pg_interface import VppPGInterface
 from vpp_interface import VppInterface
+from vpp_papi import VppEnum
 
 
 class L2_VTR_OP:
@@ -17,8 +17,7 @@ class L2_VTR_OP:
     L2_TRANSLATE_2_2 = 8
 
 
-@six.add_metaclass(abc.ABCMeta)
-class VppSubInterface(VppPGInterface):
+class VppSubInterface(VppPGInterface, metaclass=abc.ABCMeta):
 
     @property
     def parent(self):
@@ -59,7 +58,7 @@ class VppSubInterface(VppPGInterface):
         pass
 
     @abc.abstractmethod
-    def create_ndp_req(self):
+    def create_ndp_req(self, addr=None):
         pass
 
     def resolve_arp(self):
@@ -155,8 +154,8 @@ class VppDot1QSubint(VppSubInterface):
         packet = VppPGInterface.create_arp_req(self)
         return self.add_dot1_layer(packet)
 
-    def create_ndp_req(self):
-        packet = VppPGInterface.create_ndp_req(self)
+    def create_ndp_req(self, addr=None):
+        packet = VppPGInterface.create_ndp_req(self, addr)
         return self.add_dot1_layer(packet)
 
     # called before sending packet
@@ -182,10 +181,13 @@ class VppDot1ADSubint(VppSubInterface):
 
     def __init__(self, test, parent, sub_id, outer_vlan, inner_vlan):
         super(VppDot1ADSubint, self).__init__(test, parent, sub_id)
+        flags = (VppEnum.vl_api_sub_if_flags_t.SUB_IF_API_FLAG_DOT1AD |
+                 VppEnum.vl_api_sub_if_flags_t.SUB_IF_API_FLAG_TWO_TAGS |
+                 VppEnum.vl_api_sub_if_flags_t.SUB_IF_API_FLAG_EXACT_MATCH)
         r = test.vapi.create_subif(sw_if_index=parent.sw_if_index,
                                    sub_id=sub_id, outer_vlan_id=outer_vlan,
-                                   inner_vlan_id=inner_vlan, two_tags=1,
-                                   dot1ad=1, exact_match=1)
+                                   inner_vlan_id=inner_vlan,
+                                   sub_if_flags=flags)
         self.set_sw_if_index(r.sw_if_index)
         self._outer_vlan = outer_vlan
         self._inner_vlan = inner_vlan
@@ -194,8 +196,8 @@ class VppDot1ADSubint(VppSubInterface):
         packet = VppPGInterface.create_arp_req(self)
         return self.add_dot1_layer(packet)
 
-    def create_ndp_req(self):
-        packet = VppPGInterface.create_ndp_req(self)
+    def create_ndp_req(self, addr=None):
+        packet = VppPGInterface.create_ndp_req(self, addr)
         return self.add_dot1_layer(packet)
 
     def add_dot1_layer(self, packet):
@@ -226,6 +228,6 @@ class VppP2PSubint(VppSubInterface):
         packet = VppPGInterface.create_arp_req(self)
         return packet
 
-    def create_ndp_req(self):
-        packet = VppPGInterface.create_ndp_req(self)
+    def create_ndp_req(self, addr=None):
+        packet = VppPGInterface.create_ndp_req(self, addr)
         return packet