diff options
| author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2025-01-11 14:20:29 +0000 |
|---|---|---|
| committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2025-01-11 14:20:29 +0000 |
| commit | 10de7ce46af1d38edfc449800ce730ad9bb4fbaa (patch) | |
| tree | 11ce1e60099be7bf68eb0a428e370b8fefa702bd | |
| parent | 55b846e604dc5117f7e37181a532ebae5cc2470e (diff) | |
| download | vyos-1x-10de7ce46af1d38edfc449800ce730ad9bb4fbaa.tar.gz vyos-1x-10de7ce46af1d38edfc449800ce730ad9bb4fbaa.zip | |
Move VPPContron to interface init
| -rw-r--r-- | python/vyos/vpp/interface/bond.py | 33 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/bridge.py | 17 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/ethernet.py | 9 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/geneve.py | 13 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/gre.py | 13 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/ipip.py | 15 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/loopback.py | 17 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/vxlan.py | 13 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/wireguard.py | 13 | ||||
| -rw-r--r-- | python/vyos/vpp/interface/xconnect.py | 21 |
10 files changed, 79 insertions, 85 deletions
diff --git a/python/vyos/vpp/interface/bond.py b/python/vyos/vpp/interface/bond.py index 1cc306670..28aae74a1 100644 --- a/python/vyos/vpp/interface/bond.py +++ b/python/vyos/vpp/interface/bond.py @@ -1,5 +1,5 @@ # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl from vyos.vpp.control_host import set_promisc -vpp = VPPControl() - class BondInterface: def __init__( @@ -36,6 +34,7 @@ class BondInterface: self.load_balance = load_balance self.mac = mac self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create Bond interface @@ -53,9 +52,9 @@ class BondInterface: } if self.mac: create_args.update({'use_custom_mac': True, 'mac_address': self.mac}) - vpp.api.bond_create2(**create_args) + self.vpp.api.bond_create2(**create_args) if self.kernel_interface: - vpp.lcp_pair_add(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface) def delete(self): """Delete Bond interface @@ -64,8 +63,8 @@ class BondInterface: a = BondInterface(ifname='bond0') a.delete() """ - bond_if_index = vpp.get_sw_if_index(self.ifname) - vpp.api.bond_delete(sw_if_index=bond_if_index) + bond_if_index = self.vpp.get_sw_if_index(self.ifname) + self.vpp.api.bond_delete(sw_if_index=bond_if_index) def add_member(self, interface): """Add member to Bond interface @@ -74,13 +73,15 @@ class BondInterface: a = BondInterface(ifname='bond0') a.add_member(interface='eth0') """ - bond_if_index = vpp.get_sw_if_index(f'BondEthernet{self.instance}') - member_if_index = vpp.get_sw_if_index(interface) - member_if_type = vpp.get_sw_if_dev_type(interface) - vpp.api.bond_add_member( + bond_if_index = self.vpp.get_sw_if_index(f'BondEthernet{self.instance}') + member_if_index = self.vpp.get_sw_if_index(interface) + member_if_type = self.vpp.get_sw_if_dev_type(interface) + self.vpp.api.bond_add_member( bond_sw_if_index=bond_if_index, sw_if_index=member_if_index ) - vpp.api.sw_interface_set_promisc(sw_if_index=member_if_index, promisc_on=True) + self.vpp.api.sw_interface_set_promisc( + sw_if_index=member_if_index, promisc_on=True + ) if member_if_type == 'AF_XDP interface': set_promisc(f'defunct_{interface}', 'on') @@ -91,8 +92,8 @@ class BondInterface: a = BondInterface(ifname='bond0') a.detach_member(interface='eth0') """ - member_if_index = vpp.get_sw_if_index(interface) - vpp.api.bond_detach_member(sw_if_index=member_if_index) + member_if_index = self.vpp.get_sw_if_index(interface) + self.vpp.api.bond_detach_member(sw_if_index=member_if_index) def kernel_add(self): """Add LCP pair @@ -101,7 +102,7 @@ class BondInterface: a = BondInterface(ifname='bond0', mode=5) a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface) def kernel_delete(self): """Delete LCP pair @@ -110,4 +111,4 @@ class BondInterface: a = BondInterface(ifname='bond0', mode=5) a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/bridge.py b/python/vyos/vpp/interface/bridge.py index e220547de..407eab08c 100644 --- a/python/vyos/vpp/interface/bridge.py +++ b/python/vyos/vpp/interface/bridge.py @@ -1,5 +1,5 @@ # -# Copyright (C) 2023-2024 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,8 +17,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - class BridgeInterface: def __init__( @@ -37,6 +35,7 @@ class BridgeInterface: self.learn = learn self.uu_flood = uu_flood self.arp_term = arp_term + self.vpp = VPPControl() def add(self): """Create Bridge interface @@ -49,7 +48,7 @@ class BridgeInterface: a = BridgeInterface(ifname='br23') a.add() """ - vpp.api.bridge_domain_add_del_v2( + self.vpp.api.bridge_domain_add_del_v2( is_add=True, bd_id=self.interface_suffix, flood=self.flood, @@ -69,7 +68,7 @@ class BridgeInterface: a = BridgeInterface(ifname='br23') a.delete() """ - vpp.api.bridge_domain_add_del_v2(is_add=False, bd_id=self.interface_suffix) + self.vpp.api.bridge_domain_add_del_v2(is_add=False, bd_id=self.interface_suffix) def add_member(self, member: str | int): """Add member to Bridge interface @@ -94,9 +93,9 @@ class BridgeInterface: elif member.isdigit(): member_if_index = int(member) else: - member_if_index = vpp.get_sw_if_index(member) + member_if_index = self.vpp.get_sw_if_index(member) - return vpp.api.sw_interface_set_l2_bridge( + return self.vpp.api.sw_interface_set_l2_bridge( rx_sw_if_index=member_if_index, bd_id=bridge_index, port_type=0 ) @@ -121,8 +120,8 @@ class BridgeInterface: elif member.isdigit(): member_if_index = int(member) else: - member_if_index = vpp.get_sw_if_index(member) + member_if_index = self.vpp.get_sw_if_index(member) - return vpp.api.sw_interface_set_l2_bridge( + return self.vpp.api.sw_interface_set_l2_bridge( rx_sw_if_index=member_if_index, bd_id=0, port_type=0 ) diff --git a/python/vyos/vpp/interface/ethernet.py b/python/vyos/vpp/interface/ethernet.py index ddd3dc42f..368d94c7f 100644 --- a/python/vyos/vpp/interface/ethernet.py +++ b/python/vyos/vpp/interface/ethernet.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP Ethernet interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - class EthernetInterface: """Interface Ethernet""" @@ -28,6 +26,7 @@ class EthernetInterface: self.instance = int(ifname.removeprefix('eth')) self.ifname = ifname self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): pass @@ -42,7 +41,7 @@ class EthernetInterface: a = EthernetInterface(ifname='eth0') a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface) def kernel_delete(self): """Delete LCP pair @@ -51,4 +50,4 @@ class EthernetInterface: a = EthernetInterface(ifname='eth0') a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/geneve.py b/python/vyos/vpp/interface/geneve.py index 3d5e75003..a55e29d80 100644 --- a/python/vyos/vpp/interface/geneve.py +++ b/python/vyos/vpp/interface/geneve.py @@ -1,6 +1,6 @@ # VyOS implementation of Geneve interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - def show(): """Show Geneve interface @@ -38,6 +36,7 @@ class GeneveInterface: self.dst_address = remote self.vni = vni self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create Geneve interface @@ -48,7 +47,7 @@ class GeneveInterface: a = GeneveInterface(ifname='geneve25', source_address='192.0.2.1', remote='203.0.113.25', vni=25) a.add() """ - return vpp.api.geneve_add_del_tunnel2( + return self.vpp.api.geneve_add_del_tunnel2( is_add=True, local_address=self.src_address, remote_address=self.dst_address, @@ -63,7 +62,7 @@ class GeneveInterface: a = GeneveInterface(ifname='vxlan25', source_address='192.0.2.1', remote='203.0.113.25', vni=25) a.delete() """ - return vpp.api.geneve_add_del_tunnel2( + return self.vpp.api.geneve_add_del_tunnel2( is_add=False, local_address=self.src_address, remote_address=self.dst_address, @@ -78,7 +77,7 @@ class GeneveInterface: a = GeneveInterface(ifname='vxlan25', source_address='192.0.2.1', remote='203.0.113.25', vni=25) a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') def kernel_delete(self): """Delete LCP pair @@ -87,4 +86,4 @@ class GeneveInterface: a = GeneveInterface(ifname='vxlan25', source_address='192.0.2.1', remote='203.0.113.25', vni=25) a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/gre.py b/python/vyos/vpp/interface/gre.py index 0017127ec..8a9128836 100644 --- a/python/vyos/vpp/interface/gre.py +++ b/python/vyos/vpp/interface/gre.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP GRE interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - def show(): """Show GRE interface @@ -37,6 +35,7 @@ class GREInterface: self.src_address = source_address self.dst_address = remote self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create GRE interface @@ -46,7 +45,7 @@ class GREInterface: a = GREInterface(ifname='gre0', source_address='192.0.2.1', remote='203.0.113.25') a.add() """ - vpp.api.gre_tunnel_add_del( + self.vpp.api.gre_tunnel_add_del( is_add=True, tunnel={ 'src': self.src_address, @@ -62,7 +61,7 @@ class GREInterface: a = GREInterface(ifname='gre0', source_address='192.0.2.1', remote='203.0.113.25') a.delete() """ - return vpp.api.gre_tunnel_add_del( + return self.vpp.api.gre_tunnel_add_del( is_add=False, tunnel={'src': self.src_address, 'dst': self.dst_address} ) @@ -73,7 +72,7 @@ class GREInterface: a = GREInterface(ifname='gre0', source_address='192.0.2.1', remote='203.0.113.25') a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') def kernel_delete(self): """Delete LCP pair @@ -82,4 +81,4 @@ class GREInterface: a = GREInterface(ifname='gre0', source_address='192.0.2.1', remote='203.0.113.25') a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/ipip.py b/python/vyos/vpp/interface/ipip.py index e1f19735b..031b0a698 100644 --- a/python/vyos/vpp/interface/ipip.py +++ b/python/vyos/vpp/interface/ipip.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP IPIP interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - def show(): """Show IPIP interface @@ -37,6 +35,7 @@ class IPIPInterface: self.src_address = source_address self.dst_address = remote self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create IPIP interface @@ -46,7 +45,7 @@ class IPIPInterface: a = IPIPInterface(ifname='ipip0', source_address='192.0.2.1', remote='192.0.2.5') a.add() """ - vpp.api.ipip_add_tunnel( + self.vpp.api.ipip_add_tunnel( tunnel={ 'src': self.src_address, 'dst': self.dst_address, @@ -61,8 +60,8 @@ class IPIPInterface: a = IPIPInterface(ifname='ipip0', source_address='192.0.2.1', remote='192.0.2.5') a.delete() """ - ipip_if_index = vpp.get_sw_if_index(f'ipip{self.instance}') - return vpp.api.ipip_del_tunnel(sw_if_index=ipip_if_index) + ipip_if_index = self.vpp.get_sw_if_index(f'ipip{self.instance}') + return self.vpp.api.ipip_del_tunnel(sw_if_index=ipip_if_index) def kernel_add(self): """Add LCP pair @@ -71,7 +70,7 @@ class IPIPInterface: a = IPIPInterface(ifname='ipip0', source_address='192.0.2.1', remote='192.0.2.5') a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') def kernel_delete(self): """Delete LCP pair @@ -80,4 +79,4 @@ class IPIPInterface: a = IPIPInterface(ifname='ipip0', source_address='192.0.2.1', remote='192.0.2.5') a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/loopback.py b/python/vyos/vpp/interface/loopback.py index df7b82356..8a5414d54 100644 --- a/python/vyos/vpp/interface/loopback.py +++ b/python/vyos/vpp/interface/loopback.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP Loopback interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - class LoopbackInterface: """Interface Loopback""" @@ -28,6 +26,7 @@ class LoopbackInterface: self.instance = int(ifname.removeprefix('lo')) self.ifname = f'loop{self.instance}' self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create Loopback interface @@ -37,7 +36,9 @@ class LoopbackInterface: a = LoopbackInterface(ifname='lo1') a.add() """ - vpp.api.create_loopback_instance(is_specified=True, user_instance=self.instance) + self.vpp.api.create_loopback_instance( + is_specified=True, user_instance=self.instance + ) def delete(self): """Delete Loopback interface @@ -46,8 +47,8 @@ class LoopbackInterface: a = LoopbackInterface(ifname='lo1') a.delete() """ - loopback_if_index = vpp.get_sw_if_index(f'loop{self.instance}') - return vpp.api.delete_loopback(sw_if_index=loopback_if_index) + loopback_if_index = self.vpp.get_sw_if_index(f'loop{self.instance}') + return self.vpp.api.delete_loopback(sw_if_index=loopback_if_index) def kernel_add(self): """Add LCP pair @@ -56,7 +57,7 @@ class LoopbackInterface: a = LoopbackInterface(ifname='lo1') a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface) def kernel_delete(self): """Delete LCP pair @@ -65,4 +66,4 @@ class LoopbackInterface: a = LoopbackInterface(ifname='lo1') a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/vxlan.py b/python/vyos/vpp/interface/vxlan.py index 907fcbee0..91e7b3059 100644 --- a/python/vyos/vpp/interface/vxlan.py +++ b/python/vyos/vpp/interface/vxlan.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP VXLAN interface # -# Copyright (C) 2023-2024 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - def show(): """Show VXLAN interface @@ -40,6 +38,7 @@ class VXLANInterface: self.dst_address = remote self.vni = vni self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create VXLAN interface @@ -50,7 +49,7 @@ class VXLANInterface: a = VXLANInterface(ifname='vxlan23', source_address='192.0.2.1', remote='203.0.113.23', vni=23) a.add() """ - vpp.api.vxlan_add_del_tunnel_v3( + self.vpp.api.vxlan_add_del_tunnel_v3( is_add=True, src_address=self.src_address, dst_address=self.dst_address, @@ -67,7 +66,7 @@ class VXLANInterface: a = VXLANInterface(ifname='vxlan23', source_address='192.0.2.1', remote='203.0.113.23', vni=23) a.delete() """ - return vpp.api.vxlan_add_del_tunnel_v3( + return self.vpp.api.vxlan_add_del_tunnel_v3( is_add=False, src_address=self.src_address, dst_address=self.dst_address, @@ -82,7 +81,7 @@ class VXLANInterface: a = VXLANInterface(ifname='vxlan23', source_address='192.0.2.1', remote='203.0.113.23', vni=23) a.kernel_add() """ - vpp.lcp_pair_add(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface) def kernel_delete(self): """Delete LCP pair @@ -91,4 +90,4 @@ class VXLANInterface: a = VXLANInterface(ifname='vxlan23', source_address='192.0.2.1', remote='203.0.113.23', vni=23) a.kernel_delete() """ - vpp.lcp_pair_del(self.ifname, self.kernel_interface) + self.vpp.lcp_pair_del(self.ifname, self.kernel_interface) diff --git a/python/vyos/vpp/interface/wireguard.py b/python/vyos/vpp/interface/wireguard.py index 582929851..649ed5b05 100644 --- a/python/vyos/vpp/interface/wireguard.py +++ b/python/vyos/vpp/interface/wireguard.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP Wireguard interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ from vyos.vpp import VPPControl -vpp = VPPControl() - class WireguardInterface: """Interface Wireguard""" @@ -29,6 +27,7 @@ class WireguardInterface: self.ifname = ifname self.listen_port = listen_port self.kernel_interface = kernel_interface + self.vpp = VPPControl() def add(self): """Create Wireguard interface @@ -38,12 +37,12 @@ class WireguardInterface: a = WireguardInterface(ifname='wg5', listen_port=51820, generate_key=True) a.add() """ - vpp.api.wireguard_interface_create( + self.vpp.api.wireguard_interface_create( generate_key=True, interface={'user_instance': self.instance, 'listen_port': self.listen_port}, ) if self.kernel_interface: - vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') + self.vpp.lcp_pair_add(self.ifname, self.kernel_interface, 'tun') def delete(self): """Delete Wireguard interface @@ -52,5 +51,5 @@ class WireguardInterface: a = WireguardInterface(ifname='wg5') a.delete() """ - wg_if_index = vpp.get_sw_if_index(f'wg{self.instance}') - return vpp.api.wireguard_interface_delete(sw_if_index=wg_if_index) + wg_if_index = self.vpp.get_sw_if_index(f'wg{self.instance}') + return self.vpp.api.wireguard_interface_delete(sw_if_index=wg_if_index) diff --git a/python/vyos/vpp/interface/xconnect.py b/python/vyos/vpp/interface/xconnect.py index b4bec3321..41cf773d9 100644 --- a/python/vyos/vpp/interface/xconnect.py +++ b/python/vyos/vpp/interface/xconnect.py @@ -1,6 +1,6 @@ # VyOS implementation of VPP bridge interface # -# Copyright (C) 2023 VyOS Inc. +# Copyright (C) 2023-2025 VyOS Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -19,8 +19,6 @@ from vyos.vpp import VPPControl from vyos.vpp.utils import iftunnel_transform -vpp = VPPControl() - class XconnectInterface: def __init__( @@ -30,6 +28,7 @@ class XconnectInterface: ): self.ifname = ifname self.members = members + self.vpp = VPPControl() def add_l2_xconnect(self): """Add l2 cross connect @@ -49,14 +48,14 @@ class XconnectInterface: if second_member.startswith(interface_transform_filter): second_member = iftunnel_transform(second_member) - member_first_if_index = vpp.get_sw_if_index(first_member) - member_second_if_index = vpp.get_sw_if_index(second_member) - vpp.api.sw_interface_set_l2_xconnect( + member_first_if_index = self.vpp.get_sw_if_index(first_member) + member_second_if_index = self.vpp.get_sw_if_index(second_member) + self.vpp.api.sw_interface_set_l2_xconnect( rx_sw_if_index=member_first_if_index, tx_sw_if_index=member_second_if_index, enable=True, ) - vpp.api.sw_interface_set_l2_xconnect( + self.vpp.api.sw_interface_set_l2_xconnect( rx_sw_if_index=member_second_if_index, tx_sw_if_index=member_first_if_index, enable=True, @@ -80,14 +79,14 @@ class XconnectInterface: if second_member.startswith(interface_transform_filter): second_member = iftunnel_transform(second_member) - member_first_if_index = vpp.get_sw_if_index(first_member) - member_second_if_index = vpp.get_sw_if_index(second_member) - vpp.api.sw_interface_set_l2_xconnect( + member_first_if_index = self.vpp.get_sw_if_index(first_member) + member_second_if_index = self.vpp.get_sw_if_index(second_member) + self.vpp.api.sw_interface_set_l2_xconnect( rx_sw_if_index=member_first_if_index, tx_sw_if_index=member_second_if_index, enable=False, ) - vpp.api.sw_interface_set_l2_xconnect( + self.vpp.api.sw_interface_set_l2_xconnect( rx_sw_if_index=member_second_if_index, tx_sw_if_index=member_first_if_index, enable=False, |
