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:37:24 +0100
commit577ae00d0c7329bea8102fcf75de82cb188b4fb8 (patch)
tree8ccead51779169995a9e95a29a9df8c2fe672db8
parentbdc35ac8ad1d3d88c796aa488749e44bda617b44 (diff)
downloadvyos-1x-577ae00d0c7329bea8102fcf75de82cb188b4fb8.tar.gz
vyos-1x-577ae00d0c7329bea8102fcf75de82cb188b4fb8.zip
xml: tunnel: erspan: 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.
-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/include/tunnel-parameters-ip.xml.i46
-rw-r--r--interface-definitions/interfaces-erspan.xml.in4
-rw-r--r--interface-definitions/interfaces-tunnel.xml.in19
7 files changed, 74 insertions, 62 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/include/tunnel-parameters-ip.xml.i b/interface-definitions/include/tunnel-parameters-ip.xml.i
deleted file mode 100644
index 0a667d199..000000000
--- a/interface-definitions/include/tunnel-parameters-ip.xml.i
+++ /dev/null
@@ -1,46 +0,0 @@
-<!-- included start from tunnel-parameters-ip.xml.i -->
-<leafNode name="ttl">
- <properties>
- <help>Time to live (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>
-<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>
diff --git a/interface-definitions/interfaces-erspan.xml.in b/interface-definitions/interfaces-erspan.xml.in
index 8a4bfea2b..e36a64d3a 100644
--- a/interface-definitions/interfaces-erspan.xml.in
+++ b/interface-definitions/interfaces-erspan.xml.in
@@ -51,7 +51,9 @@
<help>IPv4 specific tunnel parameters</help>
</properties>
<children>
- #include <include/tunnel-parameters-ip.xml.i>
+ #include <include/interface-parameters-key.xml.i>
+ #include <include/interface-parameters-tos.xml.i>
+ #include <include/interface-parameters-ttl.xml.i>
</children>
</node>
<leafNode name="version">
diff --git a/interface-definitions/interfaces-tunnel.xml.in b/interface-definitions/interfaces-tunnel.xml.in
index 45573a826..7a97980a2 100644
--- a/interface-definitions/interfaces-tunnel.xml.in
+++ b/interface-definitions/interfaces-tunnel.xml.in
@@ -151,7 +151,9 @@
<valueless/>
</properties>
</leafNode>
- #include <include/tunnel-parameters-ip.xml.i>
+ #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">
@@ -173,20 +175,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>