summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-12-01 08:19:09 +0100
committerGitHub <noreply@github.com>2023-12-01 08:19:09 +0100
commit12957f9f1aa4ab35c460c03dfb3e213639b25a71 (patch)
tree1996a41fe650a80339c6fe0ffba62f7ca200aaf4
parent5a524fa718e2536bb920ef41df04d89b2fbb83ac (diff)
parent5d98e806ef4edb4439620eff60215aaf30b5a592 (diff)
downloadvyos-1x-12957f9f1aa4ab35c460c03dfb3e213639b25a71.tar.gz
vyos-1x-12957f9f1aa4ab35c460c03dfb3e213639b25a71.zip
Merge pull request #2547 from aapostoliuk/T4704-circinus
policy: T4704: Allowed to set metric (MED) to (+/-)rtt
-rw-r--r--interface-definitions/policy.xml.in9
-rwxr-xr-xsmoketest/scripts/cli/test_policy.py27
2 files changed, 36 insertions, 0 deletions
diff --git a/interface-definitions/policy.xml.in b/interface-definitions/policy.xml.in
index c470cfdb3..0d2ed9746 100644
--- a/interface-definitions/policy.xml.in
+++ b/interface-definitions/policy.xml.in
@@ -1446,9 +1446,18 @@
<format>u32:0-4294967295</format>
<description>Metric value</description>
</valueHelp>
+ <valueHelp>
+ <format>&lt;+/-rtt&gt;</format>
+ <description>Add or subtract round trip time</description>
+ </valueHelp>
+ <valueHelp>
+ <format>&lt;rtt&gt;</format>
+ <description>Round trip time</description>
+ </valueHelp>
<constraint>
<validator name="numeric" argument="--relative --"/>
<validator name="numeric" argument="--range 0-4294967295"/>
+ <regex>^[+|-]?rtt$</regex>
</constraint>
</properties>
</leafNode>
diff --git a/smoketest/scripts/cli/test_policy.py b/smoketest/scripts/cli/test_policy.py
index 51a33f978..c21d8af4e 100755
--- a/smoketest/scripts/cli/test_policy.py
+++ b/smoketest/scripts/cli/test_policy.py
@@ -1107,6 +1107,33 @@ class TestPolicy(VyOSUnitTestSHIM.TestCase):
'metric' : '-20',
},
},
+ '30': {
+ 'action': 'permit',
+ 'match': {
+ 'ip-nexthop-addr': ipv4_nexthop_address,
+ },
+ 'set': {
+ 'metric': 'rtt',
+ },
+ },
+ '40': {
+ 'action': 'permit',
+ 'match': {
+ 'ip-nexthop-addr': ipv4_nexthop_address,
+ },
+ 'set': {
+ 'metric': '+rtt',
+ },
+ },
+ '50': {
+ 'action': 'permit',
+ 'match': {
+ 'ip-nexthop-addr': ipv4_nexthop_address,
+ },
+ 'set': {
+ 'metric': '-rtt',
+ },
+ },
},
},
}