summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2019-12-03 23:06:48 +0100
committerChristian Poessinger <christian@poessinger.com>2019-12-06 20:58:56 +0100
commit6c51461bfe1e29ecc6ea84288d080330f974111d (patch)
tree2819aab296a864e16d35d9a1f675b65702d6d8c9
parent48d44c5471e991f07aa97e726e251efd91e03b72 (diff)
downloadvyos-1x-6c51461bfe1e29ecc6ea84288d080330f974111d.tar.gz
vyos-1x-6c51461bfe1e29ecc6ea84288d080330f974111d.zip
T1843: use include files for DHCP/DHCPv6 options
As 219779b ("T1843: run interface-definitions though GCC preprocessor") implemented the foundation of using the GCC preprocessor to make our XML definitions more lightweight this commit transforms the configuration of DHCP/ DHCPv6 configuration options to this new style. It implementes it for the following interface types: * bonding * bridge * ethernet * wireless * vif/vif-s interfaces
-rw-r--r--interface-definitions/include/dhcp-dhcpv6-options.xml.i42
-rw-r--r--interface-definitions/include/vif-s.xml.i86
-rw-r--r--interface-definitions/include/vif.xml.i43
-rw-r--r--interface-definitions/interfaces-bonding.xml.in43
-rw-r--r--interface-definitions/interfaces-bridge.xml.in43
-rw-r--r--interface-definitions/interfaces-ethernet.xml.in43
-rw-r--r--interface-definitions/interfaces-wireless.xml.in43
7 files changed, 49 insertions, 294 deletions
diff --git a/interface-definitions/include/dhcp-dhcpv6-options.xml.i b/interface-definitions/include/dhcp-dhcpv6-options.xml.i
new file mode 100644
index 000000000..104b1fbe0
--- /dev/null
+++ b/interface-definitions/include/dhcp-dhcpv6-options.xml.i
@@ -0,0 +1,42 @@
+<node name="dhcp-options">
+ <properties>
+ <help>DHCP options</help>
+ </properties>
+ <children>
+ <leafNode name="client-id">
+ <properties>
+ <help>DHCP client identifier</help>
+ </properties>
+ </leafNode>
+ <leafNode name="host-name">
+ <properties>
+ <help>DHCP client host name (overrides system host name)</help>
+ </properties>
+ </leafNode>
+ <leafNode name="vendor-class-id">
+ <properties>
+ <help>DHCP client vendor type</help>
+ </properties>
+ </leafNode>
+ </children>
+</node>
+<node name="dhcpv6-options">
+ <properties>
+ <help>DHCPv6 options</help>
+ <priority>319</priority>
+ </properties>
+ <children>
+ <leafNode name="parameters-only">
+ <properties>
+ <help>Acquire only config parameters, no address</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <leafNode name="temporary">
+ <properties>
+ <help>IPv6 "temporary" address</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ </children>
+</node>
diff --git a/interface-definitions/include/vif-s.xml.i b/interface-definitions/include/vif-s.xml.i
index 8828aca13..51a68c859 100644
--- a/interface-definitions/include/vif-s.xml.i
+++ b/interface-definitions/include/vif-s.xml.i
@@ -17,48 +17,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides the system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-link-detect">
<properties>
<help>Ignore link state changes</help>
@@ -135,48 +94,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides the system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-link-detect">
<properties>
<help>Ignore link state changes</help>
diff --git a/interface-definitions/include/vif.xml.i b/interface-definitions/include/vif.xml.i
index 489107ece..0cc3d3dc8 100644
--- a/interface-definitions/include/vif.xml.i
+++ b/interface-definitions/include/vif.xml.i
@@ -21,48 +21,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-link-detect">
<properties>
<help>Ignore link state changes</help>
diff --git a/interface-definitions/interfaces-bonding.xml.in b/interface-definitions/interfaces-bonding.xml.in
index f24577100..b43e7c489 100644
--- a/interface-definitions/interfaces-bonding.xml.in
+++ b/interface-definitions/interfaces-bonding.xml.in
@@ -58,48 +58,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides the system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-link-detect">
<properties>
<help>Ignore link state changes</help>
diff --git a/interface-definitions/interfaces-bridge.xml.in b/interface-definitions/interfaces-bridge.xml.in
index e255e3879..154f47686 100644
--- a/interface-definitions/interfaces-bridge.xml.in
+++ b/interface-definitions/interfaces-bridge.xml.in
@@ -42,48 +42,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides the system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-link-detect">
<properties>
<help>Ignore link state changes</help>
diff --git a/interface-definitions/interfaces-ethernet.xml.in b/interface-definitions/interfaces-ethernet.xml.in
index 6bf72defa..37836dbc0 100644
--- a/interface-definitions/interfaces-ethernet.xml.in
+++ b/interface-definitions/interfaces-ethernet.xml.in
@@ -30,48 +30,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-flow-control">
<properties>
<help>Disable Ethernet flow control (pause frames)</help>
diff --git a/interface-definitions/interfaces-wireless.xml.in b/interface-definitions/interfaces-wireless.xml.in
index d876a76af..b45774890 100644
--- a/interface-definitions/interfaces-wireless.xml.in
+++ b/interface-definitions/interfaces-wireless.xml.in
@@ -454,48 +454,7 @@
<constraintErrorMessage>Interface description too long (limit 256 characters)</constraintErrorMessage>
</properties>
</leafNode>
- <node name="dhcp-options">
- <properties>
- <help>DHCP options</help>
- </properties>
- <children>
- <leafNode name="client-id">
- <properties>
- <help>DHCP client identifier</help>
- </properties>
- </leafNode>
- <leafNode name="host-name">
- <properties>
- <help>DHCP client host name (overrides system host name)</help>
- </properties>
- </leafNode>
- <leafNode name="vendor-class-id">
- <properties>
- <help>DHCP client vendor type</help>
- </properties>
- </leafNode>
- </children>
- </node>
- <node name="dhcpv6-options">
- <properties>
- <help>DHCPv6 options</help>
- <priority>319</priority>
- </properties>
- <children>
- <leafNode name="parameters-only">
- <properties>
- <help>Acquire only config parameters, no address</help>
- <valueless/>
- </properties>
- </leafNode>
- <leafNode name="temporary">
- <properties>
- <help>IPv6 "temporary" address</help>
- <valueless/>
- </properties>
- </leafNode>
- </children>
- </node>
+ #include <include/dhcp-dhcpv6-options.xml.i>
<leafNode name="disable-broadcast-ssid">
<properties>
<help>Disable broadcast of SSID from access-point</help>