summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-02-22 17:35:27 +0100
committerChristian Poessinger <christian@poessinger.com>2021-02-22 17:39:36 +0100
commit121ca131f662fe7a09c24f236ffe572eaecf0710 (patch)
tree6dae7065cdf4bdb2aceac073518bceb9d38fb6be
parentefc0ecb17de5c6661d092fd990dfdabe9e6b60ef (diff)
downloadvyos-1x-121ca131f662fe7a09c24f236ffe572eaecf0710.tar.gz
vyos-1x-121ca131f662fe7a09c24f236ffe572eaecf0710.zip
xml: tunnel: make individual parameter nodes reusable
VXLAN will get tos, ttl and flowlabel options thus make individual parameter settings reusable by splitting tunnel-parameters-ip.xml.i into individual files. (cherry picked from commit 577ae00d0c7329bea8102fcf75de82cb188b4fb8)
-rw-r--r--interface-definitions/include/interface-parameters-flowlabel.xml.i16
-rw-r--r--interface-definitions/include/interface-parameters-key.xml.i15
-rw-r--r--interface-definitions/include/interface-parameters-tos.xml.i16
-rw-r--r--interface-definitions/include/interface-parameters-ttl.xml.i20
-rw-r--r--interface-definitions/interfaces-tunnel.xml.in59
5 files changed, 71 insertions, 55 deletions
diff --git a/interface-definitions/include/interface-parameters-flowlabel.xml.i b/interface-definitions/include/interface-parameters-flowlabel.xml.i
new file mode 100644
index 000000000..ae65c27c9
--- /dev/null
+++ b/interface-definitions/include/interface-parameters-flowlabel.xml.i
@@ -0,0 +1,16 @@
+<!-- included start from interface-parameters-flowlabel.xml.i -->
+<leafNode name="flowlabel">
+ <properties>
+ <help>Specifies the flow label to use in outgoing packets</help>
+ <valueHelp>
+ <format>0x0-0x0FFFFF</format>
+ <description>Tunnel key, 'inherit' or hex value</description>
+ </valueHelp>
+ <constraint>
+ <regex>^((0x){0,1}(0?[0-9A-Fa-f]{1,5})|inherit)$</regex>
+ </constraint>
+ <constraintErrorMessage>Must be 'inherit' or a number</constraintErrorMessage>
+ </properties>
+ <defaultValue>inherit</defaultValue>
+</leafNode>
+<!-- included end -->
diff --git a/interface-definitions/include/interface-parameters-key.xml.i b/interface-definitions/include/interface-parameters-key.xml.i
new file mode 100644
index 000000000..e918ff0e8
--- /dev/null
+++ b/interface-definitions/include/interface-parameters-key.xml.i
@@ -0,0 +1,15 @@
+<!-- included start from interface-parameters-key.xml.i -->
+<leafNode name="key">
+ <properties>
+ <help>Tunnel key</help>
+ <valueHelp>
+ <format>u32</format>
+ <description>Tunnel key</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-4294967295"/>
+ </constraint>
+ <constraintErrorMessage>key must be between 0-4294967295</constraintErrorMessage>
+ </properties>
+</leafNode>
+<!-- included end -->
diff --git a/interface-definitions/include/interface-parameters-tos.xml.i b/interface-definitions/include/interface-parameters-tos.xml.i
new file mode 100644
index 000000000..ebb537bed
--- /dev/null
+++ b/interface-definitions/include/interface-parameters-tos.xml.i
@@ -0,0 +1,16 @@
+<!-- included start from tunnel-parameters-tos.xml.i -->
+<leafNode name="tos">
+ <properties>
+ <help>Specifies TOS value to use in outgoing packets</help>
+ <valueHelp>
+ <format>0-99</format>
+ <description>Type of Service (TOS)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-99"/>
+ </constraint>
+ <constraintErrorMessage>TOS must be between 0 and 99</constraintErrorMessage>
+ </properties>
+ <defaultValue>inherit</defaultValue>
+</leafNode>
+<!-- included end -->
diff --git a/interface-definitions/include/interface-parameters-ttl.xml.i b/interface-definitions/include/interface-parameters-ttl.xml.i
new file mode 100644
index 000000000..a6a6f163f
--- /dev/null
+++ b/interface-definitions/include/interface-parameters-ttl.xml.i
@@ -0,0 +1,20 @@
+<!-- included start from interface-parameters-ttl.xml.i -->
+<leafNode name="ttl">
+ <properties>
+ <help>Specifies TTL value to use in outgoing packets (default: 0)</help>
+ <valueHelp>
+ <format>0</format>
+ <description>Copy value from original IP header</description>
+ </valueHelp>
+ <valueHelp>
+ <format>1-255</format>
+ <description>Time to Live</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-255"/>
+ </constraint>
+ <constraintErrorMessage>TTL must be between 0 and 255</constraintErrorMessage>
+ </properties>
+ <defaultValue>0</defaultValue>
+</leafNode>
+<!-- included end -->
diff --git a/interface-definitions/interfaces-tunnel.xml.in b/interface-definitions/interfaces-tunnel.xml.in
index bb5081678..10dd3091d 100644
--- a/interface-definitions/interfaces-tunnel.xml.in
+++ b/interface-definitions/interfaces-tunnel.xml.in
@@ -180,47 +180,9 @@
<help>IPv4 specific tunnel parameters</help>
</properties>
<children>
- <leafNode name="ttl">
- <properties>
- <help>Time to live field</help>
- <valueHelp>
- <format>0-255</format>
- <description>Time to live (default 255)</description>
- </valueHelp>
- <constraint>
- <validator name="numeric" argument="--range 0-255"/>
- </constraint>
- <constraintErrorMessage>TTL must be between 0 and 255</constraintErrorMessage>
- </properties>
- <defaultValue>255</defaultValue>
- </leafNode>
- <leafNode name="tos">
- <properties>
- <help>Type of Service (TOS)</help>
- <valueHelp>
- <format>0-99</format>
- <description>Type of Service (TOS)</description>
- </valueHelp>
- <constraint>
- <validator name="numeric" argument="--range 0-99"/>
- </constraint>
- <constraintErrorMessage>TOS must be between 0 and 99</constraintErrorMessage>
- </properties>
- <defaultValue>inherit</defaultValue>
- </leafNode>
- <leafNode name="key">
- <properties>
- <help>Tunnel key</help>
- <valueHelp>
- <format>u32</format>
- <description>Tunnel key</description>
- </valueHelp>
- <constraint>
- <validator name="numeric" argument="--range 0-4294967295"/>
- </constraint>
- <constraintErrorMessage>key must be between 0-4294967295</constraintErrorMessage>
- </properties>
- </leafNode>
+ #include <include/interface-parameters-key.xml.i>
+ #include <include/interface-parameters-tos.xml.i>
+ #include <include/interface-parameters-ttl.xml.i>
</children>
</node>
<node name="ipv6">
@@ -242,20 +204,7 @@
</properties>
<defaultValue>4</defaultValue>
</leafNode>
- <leafNode name="flowlabel">
- <properties>
- <help>Flowlabel</help>
- <valueHelp>
- <format>0x0-0x0FFFFF</format>
- <description>Tunnel key, 'inherit' or hex value</description>
- </valueHelp>
- <constraint>
- <regex>(0x){0,1}(0?[0-9A-Fa-f]{1,5})</regex>
- </constraint>
- <constraintErrorMessage>Must be 'inherit' or a number</constraintErrorMessage>
- </properties>
- <defaultValue>inherit</defaultValue>
- </leafNode>
+ #include <include/interface-parameters-flowlabel.xml.i>
<leafNode name="hoplimit">
<properties>
<help>Hoplimit</help>