summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_firewall.py
diff options
context:
space:
mode:
authorsarthurdev <965089+sarthurdev@users.noreply.github.com>2026-03-31 22:47:11 +0200
committersarthurdev <965089+sarthurdev@users.noreply.github.com>2026-03-31 23:09:09 +0200
commit5d51856e5d350ba8d855c047cbc942fcf48b575c (patch)
tree399c2cea917a5e66751c605ab1616fdfec0a982e /smoketest/scripts/cli/test_firewall.py
parentfbae51d4683e97fd9f32b5f1d71b903e728cdca3 (diff)
downloadvyos-1x-5d51856e5d350ba8d855c047cbc942fcf48b575c.tar.gz
vyos-1x-5d51856e5d350ba8d855c047cbc942fcf48b575c.zip
firewall: T8446: Prevent chain with offload rule on local zone
* Add warning when defining `offload-target` without setting action to `offload`
Diffstat (limited to 'smoketest/scripts/cli/test_firewall.py')
-rwxr-xr-xsmoketest/scripts/cli/test_firewall.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_firewall.py b/smoketest/scripts/cli/test_firewall.py
index cc9289d22..32e490619 100755
--- a/smoketest/scripts/cli/test_firewall.py
+++ b/smoketest/scripts/cli/test_firewall.py
@@ -966,6 +966,20 @@ class TestFirewall(VyOSUnitTestSHIM.TestCase):
self.cli_set(['firewall', 'global-options', 'state-policy', 'related', 'action', 'accept'])
self.cli_set(['firewall', 'global-options', 'state-policy', 'invalid', 'action', 'drop'])
+ # Test error on offload from local zone
+ self.cli_set(['firewall', 'flowtable', 'smoketest', 'interface', 'eth0'])
+ self.cli_set(['firewall', 'flowtable', 'smoketest', 'offload', 'software'])
+ self.cli_set(['firewall', 'ipv4', 'name', 'smoketest', 'rule', '1', 'action', 'offload'])
+ self.cli_set(['firewall', 'ipv4', 'name', 'smoketest', 'rule', '1', 'offload-target', 'smoketest'])
+ self.cli_set(['firewall', 'ipv4', 'name', 'smoketest', 'rule', '1', 'state', 'established'])
+ self.cli_set(['firewall', 'ipv4', 'name', 'smoketest', 'rule', '1', 'state', 'related'])
+
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+
+ self.cli_delete(['firewall', 'flowtable', 'smoketest'])
+ self.cli_delete(['firewall', 'ipv4', 'name', 'smoketest', 'rule', '1'])
+
self.cli_commit()
nftables_search = [