diff options
| author | Rafael Zalamena <rzalamena@users.noreply.github.com> | 2022-07-22 14:12:17 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-07-22 14:12:17 +0000 |
| commit | b8443f7ad39ce0429f53c286d04a84b6faaeef83 (patch) | |
| tree | cbe8317eb6858926883caf6fd2bae15a4b0f2b76 /tests/topotests/lib/micronet.py | |
| parent | efb6140a9bf38ac9ccea43bd7e3da46a21b776ba (diff) | |
| parent | 97413ed7786ebcc59e1b86d19bb03d50f9feb9f1 (diff) | |
Merge pull request #11565 from pguibert6WIND/bfd_vrf_lite_support
bfdd: allow l3vrf bfd sessions without udp leaking
Diffstat (limited to 'tests/topotests/lib/micronet.py')
| -rw-r--r-- | tests/topotests/lib/micronet.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/topotests/lib/micronet.py b/tests/topotests/lib/micronet.py index 02f66e9c26..dfa10ccb2f 100644 --- a/tests/topotests/lib/micronet.py +++ b/tests/topotests/lib/micronet.py @@ -599,6 +599,60 @@ class LinuxNamespace(Commander): self.cmd_raises("mkdir -p " + inner) self.cmd_raises("mount --rbind {} {} ".format(outer, inner)) + def add_vlan(self, vlanname, linkiface, vlanid): + self.logger.debug("Adding VLAN interface: %s (%s)", vlanname, vlanid) + ip_path = self.get_exec_path("ip") + assert ip_path, "XXX missing ip command!" + self.cmd_raises( + [ + ip_path, + "link", + "add", + "link", + linkiface, + "name", + vlanname, + "type", + "vlan", + "id", + vlanid, + ] + ) + self.cmd_raises([ip_path, "link", "set", "dev", vlanname, "up"]) + + def add_loop(self, loopname): + self.logger.debug("Adding Linux iface: %s", loopname) + ip_path = self.get_exec_path("ip") + assert ip_path, "XXX missing ip command!" + self.cmd_raises([ip_path, "link", "add", loopname, "type", "dummy"]) + self.cmd_raises([ip_path, "link", "set", "dev", loopname, "up"]) + + def add_l3vrf(self, vrfname, tableid): + self.logger.debug("Adding Linux VRF: %s", vrfname) + ip_path = self.get_exec_path("ip") + assert ip_path, "XXX missing ip command!" + self.cmd_raises( + [ip_path, "link", "add", vrfname, "type", "vrf", "table", tableid] + ) + self.cmd_raises([ip_path, "link", "set", "dev", vrfname, "up"]) + + def del_iface(self, iface): + self.logger.debug("Removing Linux Iface: %s", iface) + ip_path = self.get_exec_path("ip") + assert ip_path, "XXX missing ip command!" + self.cmd_raises([ip_path, "link", "del", iface]) + + def attach_iface_to_l3vrf(self, ifacename, vrfname): + self.logger.debug("Attaching Iface %s to Linux VRF %s", ifacename, vrfname) + ip_path = self.get_exec_path("ip") + assert ip_path, "XXX missing ip command!" + if vrfname: + self.cmd_raises( + [ip_path, "link", "set", "dev", ifacename, "master", vrfname] + ) + else: + self.cmd_raises([ip_path, "link", "set", "dev", ifacename, "nomaster"]) + def add_netns(self, ns): self.logger.debug("Adding network namespace %s", ns) |
