X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Fvpp_ipip_tun_interface.py;h=67cc1b5f1d8ae1de4158e1ee57906eb0f4cb789a;hb=b4e5e50fe;hp=6e5ade6eb3df3d311f1a783d8d2216bccaf237fb;hpb=c87b66c86201458c0475d50c6e93f1497f9eec2e;p=vpp.git diff --git a/test/vpp_ipip_tun_interface.py b/test/vpp_ipip_tun_interface.py index 6e5ade6eb3d..67cc1b5f1d8 100644 --- a/test/vpp_ipip_tun_interface.py +++ b/test/vpp_ipip_tun_interface.py @@ -1,5 +1,6 @@ from vpp_tunnel_interface import VppTunnelInterface from ipaddress import ip_address +from vpp_papi import VppEnum class VppIpIpTunInterface(VppTunnelInterface): @@ -7,21 +8,34 @@ class VppIpIpTunInterface(VppTunnelInterface): VPP IP-IP Tunnel interface """ - def __init__(self, test, parent_if, src, dst): + def __init__(self, test, parent_if, src, dst, + table_id=0, dscp=0x0, + flags=0, mode=None): super(VppIpIpTunInterface, self).__init__(test, parent_if) self.src = src self.dst = dst + self.table_id = table_id + self.dscp = dscp + self.flags = flags + self.mode = mode + if not self.mode: + self.mode = (VppEnum.vl_api_tunnel_mode_t. + TUNNEL_API_MODE_P2P) def add_vpp_config(self): r = self.test.vapi.ipip_add_tunnel( tunnel={ 'src': self.src, 'dst': self.dst, - 'table_id': 0, + 'table_id': self.table_id, + 'flags': self.flags, + 'dscp': self.dscp, 'instance': 0xffffffff, + 'mode': self.mode, }) self.set_sw_if_index(r.sw_if_index) self.test.registry.register(self, self.test.logger) + return self def remove_vpp_config(self): self.test.vapi.ipip_del_tunnel(sw_if_index=self._sw_if_index) @@ -38,3 +52,11 @@ class VppIpIpTunInterface(VppTunnelInterface): def object_id(self): return "ipip-%d" % self._sw_if_index + + @property + def remote_ip(self): + return self.dst + + @property + def local_ip(self): + return self.src