summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_interfaces_bridge.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-05-27 14:53:54 +0100
committerGitHub <noreply@github.com>2025-05-27 14:53:54 +0100
commiteb07e3131ae3ea6a58ac85340a5ce049ce3e6eb2 (patch)
treee0d3e70141f8b8cbfe6cbd516358790cce327010 /smoketest/scripts/cli/test_interfaces_bridge.py
parent1dc6a82211635c64852cdd50c656fe1ab3013c0b (diff)
parente5b613191a60f0de4a231d35aa48e3f0e90a05ab (diff)
downloadvyos-1x-eb07e3131ae3ea6a58ac85340a5ce049ce3e6eb2.tar.gz
vyos-1x-eb07e3131ae3ea6a58ac85340a5ce049ce3e6eb2.zip
Merge pull request #4496 from l0crian1/add-root-bpdu-guard
Bridge: T7430: Add BPDU Guard and Root Guard support
Diffstat (limited to 'smoketest/scripts/cli/test_interfaces_bridge.py')
-rwxr-xr-xsmoketest/scripts/cli/test_interfaces_bridge.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_interfaces_bridge.py b/smoketest/scripts/cli/test_interfaces_bridge.py
index 4041b3ef3..c18be7e99 100755
--- a/smoketest/scripts/cli/test_interfaces_bridge.py
+++ b/smoketest/scripts/cli/test_interfaces_bridge.py
@@ -508,6 +508,31 @@ class BridgeInterfaceTest(BasicInterfaceTest.TestCase):
self.cli_delete(['interfaces', 'vxlan', vxlan_if])
self.cli_delete(['interfaces', 'ethernet', 'eth0', 'address', eth0_addr])
+ def test_bridge_root_bpdu_guard(self):
+ # Test if both bpdu_guard and root_guard configured
+ self.cli_set(['interfaces', 'bridge', 'br0', 'stp'])
+ self.cli_set(['interfaces', 'bridge', 'br0', 'member', 'interface', 'eth0', 'bpdu-guard'])
+ self.cli_set(['interfaces', 'bridge', 'br0', 'member', 'interface', 'eth0', 'root-guard'])
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+ self.cli_discard()
+
+ # Test if bpdu_guard configured
+ self.cli_set(['interfaces', 'bridge', 'br0', 'stp'])
+ self.cli_set(['interfaces', 'bridge', 'br0', 'member', 'interface', 'eth0', 'bpdu-guard'])
+ self.cli_commit()
+
+ tmp = read_file(f'/sys/class/net/eth0/brport/bpdu_guard')
+ self.assertEqual(tmp, '1')
+
+ # Test if root_guard configured
+ self.cli_delete(['interfaces', 'bridge', 'br0'])
+ self.cli_set(['interfaces', 'bridge', 'br0', 'stp'])
+ self.cli_set(['interfaces', 'bridge', 'br0', 'member', 'interface', 'eth0', 'root-guard'])
+ self.cli_commit()
+
+ tmp = read_file(f'/sys/class/net/eth0/brport/root_block')
+ self.assertEqual(tmp, '1')
if __name__ == '__main__':
unittest.main(verbosity=2)