diff options
| author | Daniil Baturin <daniil@vyos.io> | 2026-10-14 18:16:45 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-10-14 18:16:45 +0100 |
| commit | e96e646f030f4ee6835b1ebbdca0640f0440f0d0 (patch) | |
| tree | cc2e505b83991ec6e2652e46d60adc200650d2b4 /interface-definitions | |
| parent | b75c60f0602723122f0f45a7da8d6b45c4765edf (diff) | |
| parent | 0b43a668ac1fdbc5149616f5065279bbce9a02c8 (diff) | |
| download | vyos-1x-e96e646f030f4ee6835b1ebbdca0640f0440f0d0.tar.gz vyos-1x-e96e646f030f4ee6835b1ebbdca0640f0440f0d0.zip | |
Merge pull request #5478 from jestabro/rdep-interface
T7886: add a general method for verifying interface reverse dependencies
Diffstat (limited to 'interface-definitions')
49 files changed, 183 insertions, 35 deletions
diff --git a/interface-definitions/firewall.xml.in b/interface-definitions/firewall.xml.in index 53be2edfa..0ebe6cf69 100644 --- a/interface-definitions/firewall.xml.in +++ b/interface-definitions/firewall.xml.in @@ -16,7 +16,7 @@ </properties> <children> #include <include/generic-description.xml.i> - #include <include/generic-interface-multi.xml.i> + #include <include/dependent-error-generic-interface-multi.xml.i> <leafNode name="offload"> <properties> <help>Offloading method</help> diff --git a/interface-definitions/include/constraint/dependent-error-interface-name.xml.i b/interface-definitions/include/constraint/dependent-error-interface-name.xml.i new file mode 100644 index 000000000..ec4d524f4 --- /dev/null +++ b/interface-definitions/include/constraint/dependent-error-interface-name.xml.i @@ -0,0 +1,7 @@ +<!-- include start from constraint/dependent-error-interface-name.xml.i --> +<constraint> + <regex>(bond|br|dum|en|ersp|eth|gnv|ifb|ipoe|lan|l2tp|l2tpeth|macsec|peth|ppp|pppoe|pptp|sstp|sstpc|tun|veth|vpptap|vpptun|vti|vtun|vxlan|wg|wlan|wwan)[0-9]+(.\d+)?|pod-[-_a-zA-Z0-9]{1,11}|lo</regex> + <validator name="interface-exists"/> +</constraint> +<dependency kind="interface" alert="error"/> +<!-- include end --> diff --git a/interface-definitions/include/constraint/dependent-warning-interface-name.xml.i b/interface-definitions/include/constraint/dependent-warning-interface-name.xml.i new file mode 100644 index 000000000..bc646c3c9 --- /dev/null +++ b/interface-definitions/include/constraint/dependent-warning-interface-name.xml.i @@ -0,0 +1,7 @@ +<!-- include start from constraint/dependent-warning-interface-name.xml.i --> +<constraint> + <regex>(bond|br|dum|en|ersp|eth|gnv|ifb|ipoe|lan|l2tp|l2tpeth|macsec|peth|ppp|pppoe|pptp|sstp|sstpc|tun|veth|vpptap|vpptun|vti|vtun|vxlan|wg|wlan|wwan)[0-9]+(.\d+)?|pod-[-_a-zA-Z0-9]{1,11}|lo</regex> + <validator name="interface-exists"/> +</constraint> +<dependency kind="interface" alert="warning"/> +<!-- include end --> diff --git a/interface-definitions/include/dependent-error-generic-interface-multi.xml.i b/interface-definitions/include/dependent-error-generic-interface-multi.xml.i new file mode 100644 index 000000000..c5dd26267 --- /dev/null +++ b/interface-definitions/include/dependent-error-generic-interface-multi.xml.i @@ -0,0 +1,19 @@ +<!-- include start from dependent-error-generic-interface-multi.xml.i --> +<leafNode name="interface"> + <properties> + <help>Interface</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces</script> + </completionHelp> + <valueHelp> + <format>txt</format> + <description>Interface name</description> + </valueHelp> + <constraint> + #include <include/constraint/interface-name.xml.i> + </constraint> + <multi/> + <dependency kind="interface" alert="error"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/dependent-error-generic-interface.xml.i b/interface-definitions/include/dependent-error-generic-interface.xml.i new file mode 100644 index 000000000..c48e728c8 --- /dev/null +++ b/interface-definitions/include/dependent-error-generic-interface.xml.i @@ -0,0 +1,18 @@ +<!-- include start from dependent-error-generic-interface.xml.i --> +<leafNode name="interface"> + <properties> + <help>Interface</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces</script> + </completionHelp> + <valueHelp> + <format>txt</format> + <description>Interface name</description> + </valueHelp> + <constraint> + #include <include/constraint/interface-name.xml.i> + </constraint> + <dependency kind="interface" alert="error"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/dependent-error-source-interface.xml.i b/interface-definitions/include/dependent-error-source-interface.xml.i new file mode 100644 index 000000000..b3c23f64e --- /dev/null +++ b/interface-definitions/include/dependent-error-source-interface.xml.i @@ -0,0 +1,18 @@ +<!-- include start from dependent-error-source-interface.xml.i --> +<leafNode name="source-interface"> + <properties> + <help>Interface used to establish connection</help> + <valueHelp> + <format>interface</format> + <description>Interface name</description> + </valueHelp> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces</script> + </completionHelp> + <constraint> + #include <include/constraint/interface-name.xml.i> + </constraint> + <dependency kind="interface" alert="error"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/dependent-warning-generic-interface-multi-broadcast.xml.i b/interface-definitions/include/dependent-warning-generic-interface-multi-broadcast.xml.i new file mode 100644 index 000000000..22f6b6552 --- /dev/null +++ b/interface-definitions/include/dependent-warning-generic-interface-multi-broadcast.xml.i @@ -0,0 +1,19 @@ +<!-- include start from dependent-warning-generic-interface-multi-broadcast.xml.i --> +<leafNode name="interface"> + <properties> + <help>Interface</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces --broadcast</script> + </completionHelp> + <valueHelp> + <format>txt</format> + <description>Interface name</description> + </valueHelp> + <constraint> + #include <include/constraint/interface-name.xml.i> + </constraint> + <multi/> + <dependency kind="interface" alert="warning"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/dependent-warning-generic-interface-multi.xml.i b/interface-definitions/include/dependent-warning-generic-interface-multi.xml.i new file mode 100644 index 000000000..bd4b9ea93 --- /dev/null +++ b/interface-definitions/include/dependent-warning-generic-interface-multi.xml.i @@ -0,0 +1,19 @@ +<!-- include start from dependent-warning-generic-interface-multi.xml.i --> +<leafNode name="interface"> + <properties> + <help>Interface</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces</script> + </completionHelp> + <valueHelp> + <format>txt</format> + <description>Interface name</description> + </valueHelp> + <constraint> + #include <include/constraint/interface-name.xml.i> + </constraint> + <multi/> + <dependency kind="interface" alert="warning"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/dependent-warning-source-interface.xml.i b/interface-definitions/include/dependent-warning-source-interface.xml.i new file mode 100644 index 000000000..164135f2f --- /dev/null +++ b/interface-definitions/include/dependent-warning-source-interface.xml.i @@ -0,0 +1,18 @@ +<!-- include start from dependent-warning-source-interface.xml.i --> +<leafNode name="source-interface"> + <properties> + <help>Interface used to establish connection</help> + <valueHelp> + <format>interface</format> + <description>Interface name</description> + </valueHelp> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces</script> + </completionHelp> + <constraint> + #include <include/constraint/interface-name.xml.i> + </constraint> + <dependency kind="interface" alert="warning"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/interface/dependent-error-inbound-interface.xml.i b/interface-definitions/include/interface/dependent-error-inbound-interface.xml.i new file mode 100644 index 000000000..e1c79feb0 --- /dev/null +++ b/interface-definitions/include/interface/dependent-error-inbound-interface.xml.i @@ -0,0 +1,11 @@ +<!-- include start from interface/dependent-error-inbound-interface.xml.i --> +<leafNode name="inbound-interface"> + <properties> + <help>Inbound Interface</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces</script> + </completionHelp> + <dependency kind="interface" alert="error"/> + </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/interface/vif-s.xml.i b/interface-definitions/include/interface/vif-s.xml.i index 65ca10207..e07a9bf8a 100644 --- a/interface-definitions/include/interface/vif-s.xml.i +++ b/interface-definitions/include/interface/vif-s.xml.i @@ -10,6 +10,7 @@ <validator name="numeric" argument="--range 0-4094"/> </constraint> <constraintErrorMessage>VLAN ID must be between 0 and 4094</constraintErrorMessage> + <kind>interface</kind> </properties> <children> #include <include/generic-description.xml.i> @@ -32,6 +33,7 @@ <validator name="numeric" argument="--range 0-4094"/> </constraint> <constraintErrorMessage>VLAN ID must be between 0 and 4094</constraintErrorMessage> + <kind>interface</kind> </properties> <children> #include <include/generic-description.xml.i> diff --git a/interface-definitions/include/interface/vif.xml.i b/interface-definitions/include/interface/vif.xml.i index 87f91c5ce..e9b9385f1 100644 --- a/interface-definitions/include/interface/vif.xml.i +++ b/interface-definitions/include/interface/vif.xml.i @@ -10,6 +10,7 @@ <validator name="numeric" argument="--range 0-4094"/> </constraint> <constraintErrorMessage>VLAN ID must be between 0 and 4094</constraintErrorMessage> + <kind>interface</kind> </properties> <children> #include <include/generic-description.xml.i> diff --git a/interface-definitions/include/isis/protocol-common-config.xml.i b/interface-definitions/include/isis/protocol-common-config.xml.i index 6a7388c99..d0424ea4f 100644 --- a/interface-definitions/include/isis/protocol-common-config.xml.i +++ b/interface-definitions/include/isis/protocol-common-config.xml.i @@ -719,6 +719,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> + <dependency kind="interface" alert="error"/> </properties> <children> #include <include/bfd/bfd.xml.i> diff --git a/interface-definitions/include/ospf/protocol-common-config.xml.i b/interface-definitions/include/ospf/protocol-common-config.xml.i index 93d718ed4..caef8abb4 100644 --- a/interface-definitions/include/ospf/protocol-common-config.xml.i +++ b/interface-definitions/include/ospf/protocol-common-config.xml.i @@ -406,9 +406,7 @@ <format>txt</format> <description>Interface name</description> </valueHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-error-interface-name.xml.i> </properties> <children> <leafNode name="area"> diff --git a/interface-definitions/include/ospfv3/protocol-common-config.xml.i b/interface-definitions/include/ospfv3/protocol-common-config.xml.i index 72fb86d3d..e6d3b23b8 100644 --- a/interface-definitions/include/ospfv3/protocol-common-config.xml.i +++ b/interface-definitions/include/ospfv3/protocol-common-config.xml.i @@ -132,9 +132,7 @@ <format>txt</format> <description>Interface used for routing information exchange</description> </valueHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-error-interface-name.xml.i> </properties> <children> <leafNode name="area"> diff --git a/interface-definitions/interfaces_bonding.xml.in b/interface-definitions/interfaces_bonding.xml.in index 9945fc15d..6eca96fb1 100644 --- a/interface-definitions/interfaces_bonding.xml.in +++ b/interface-definitions/interfaces_bonding.xml.in @@ -14,6 +14,7 @@ <format>bondN</format> <description>Bonding interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_bridge.xml.in b/interface-definitions/interfaces_bridge.xml.in index d4ee2a652..b2b08659a 100644 --- a/interface-definitions/interfaces_bridge.xml.in +++ b/interface-definitions/interfaces_bridge.xml.in @@ -14,6 +14,7 @@ <format>brN</format> <description>Bridge interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_dummy.xml.in b/interface-definitions/interfaces_dummy.xml.in index 993380ab8..9f4856845 100644 --- a/interface-definitions/interfaces_dummy.xml.in +++ b/interface-definitions/interfaces_dummy.xml.in @@ -14,6 +14,7 @@ <format>dumN</format> <description>Dummy interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6.xml.i> diff --git a/interface-definitions/interfaces_ethernet.xml.in b/interface-definitions/interfaces_ethernet.xml.in index e110bd48f..466c0c8e4 100644 --- a/interface-definitions/interfaces_ethernet.xml.in +++ b/interface-definitions/interfaces_ethernet.xml.in @@ -17,6 +17,7 @@ <regex>((eth|lan)[0-9]+|(eno|ens|enp|enx).+)</regex> </constraint> <constraintErrorMessage>Invalid Ethernet interface name</constraintErrorMessage> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_geneve.xml.in b/interface-definitions/interfaces_geneve.xml.in index b85bd3b9e..385d15250 100644 --- a/interface-definitions/interfaces_geneve.xml.in +++ b/interface-definitions/interfaces_geneve.xml.in @@ -14,6 +14,7 @@ <format>gnvN</format> <description>GENEVE interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6.xml.i> diff --git a/interface-definitions/interfaces_input.xml.in b/interface-definitions/interfaces_input.xml.in index 771c47e42..8ca45053a 100644 --- a/interface-definitions/interfaces_input.xml.in +++ b/interface-definitions/interfaces_input.xml.in @@ -15,6 +15,7 @@ <format>ifbN</format> <description>Input interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/generic-description.xml.i> diff --git a/interface-definitions/interfaces_l2tpv3.xml.in b/interface-definitions/interfaces_l2tpv3.xml.in index 381e86bd0..3f6d77ad8 100644 --- a/interface-definitions/interfaces_l2tpv3.xml.in +++ b/interface-definitions/interfaces_l2tpv3.xml.in @@ -14,6 +14,7 @@ <format>l2tpethN</format> <description>L2TPv3 interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6.xml.i> diff --git a/interface-definitions/interfaces_macsec.xml.in b/interface-definitions/interfaces_macsec.xml.in index 5279a9495..3ece4d777 100644 --- a/interface-definitions/interfaces_macsec.xml.in +++ b/interface-definitions/interfaces_macsec.xml.in @@ -14,6 +14,7 @@ <format>macsecN</format> <description>MACsec interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_openvpn.xml.in b/interface-definitions/interfaces_openvpn.xml.in index ff16a5610..f0bf1db9c 100644 --- a/interface-definitions/interfaces_openvpn.xml.in +++ b/interface-definitions/interfaces_openvpn.xml.in @@ -14,6 +14,7 @@ <format>vtunN</format> <description>OpenVPN interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/authentication.xml.i> diff --git a/interface-definitions/interfaces_pppoe.xml.in b/interface-definitions/interfaces_pppoe.xml.in index d38074b41..37067aefc 100644 --- a/interface-definitions/interfaces_pppoe.xml.in +++ b/interface-definitions/interfaces_pppoe.xml.in @@ -14,6 +14,7 @@ <format>pppoeN</format> <description>PPPoE dialer interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> <leafNode name="address"> diff --git a/interface-definitions/interfaces_pseudo-ethernet.xml.in b/interface-definitions/interfaces_pseudo-ethernet.xml.in index 5687e3556..72e0fcf80 100644 --- a/interface-definitions/interfaces_pseudo-ethernet.xml.in +++ b/interface-definitions/interfaces_pseudo-ethernet.xml.in @@ -14,6 +14,7 @@ <format>pethN</format> <description>Pseudo Ethernet interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_sstpc.xml.in b/interface-definitions/interfaces_sstpc.xml.in index b7c49446f..418901a66 100644 --- a/interface-definitions/interfaces_sstpc.xml.in +++ b/interface-definitions/interfaces_sstpc.xml.in @@ -14,6 +14,7 @@ <format>sstpcN</format> <description>Secure Socket Tunneling Protocol interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/generic-description.xml.i> diff --git a/interface-definitions/interfaces_tunnel.xml.in b/interface-definitions/interfaces_tunnel.xml.in index 74849be5d..eb97e2b4c 100644 --- a/interface-definitions/interfaces_tunnel.xml.in +++ b/interface-definitions/interfaces_tunnel.xml.in @@ -14,6 +14,7 @@ <format>tunN</format> <description>Tunnel interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/generic-description.xml.i> diff --git a/interface-definitions/interfaces_virtual-ethernet.xml.in b/interface-definitions/interfaces_virtual-ethernet.xml.in index 1559a6038..37631e312 100644 --- a/interface-definitions/interfaces_virtual-ethernet.xml.in +++ b/interface-definitions/interfaces_virtual-ethernet.xml.in @@ -14,6 +14,7 @@ <format>vethN</format> <description>Virtual Ethernet interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_vti.xml.in b/interface-definitions/interfaces_vti.xml.in index 39fb3131e..b472ac9b1 100644 --- a/interface-definitions/interfaces_vti.xml.in +++ b/interface-definitions/interfaces_vti.xml.in @@ -14,6 +14,7 @@ <format>vtiN</format> <description>VTI interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6.xml.i> diff --git a/interface-definitions/interfaces_vxlan.xml.in b/interface-definitions/interfaces_vxlan.xml.in index 7f71dca34..55924edc0 100644 --- a/interface-definitions/interfaces_vxlan.xml.in +++ b/interface-definitions/interfaces_vxlan.xml.in @@ -14,6 +14,7 @@ <format>vxlanN</format> <description>VXLAN interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6.xml.i> diff --git a/interface-definitions/interfaces_wireguard.xml.in b/interface-definitions/interfaces_wireguard.xml.in index 33cb5864a..d22230de4 100644 --- a/interface-definitions/interfaces_wireguard.xml.in +++ b/interface-definitions/interfaces_wireguard.xml.in @@ -14,6 +14,7 @@ <format>wgN</format> <description>WireGuard interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6.xml.i> diff --git a/interface-definitions/interfaces_wireless.xml.in b/interface-definitions/interfaces_wireless.xml.in index 1b5356caa..ec1817585 100644 --- a/interface-definitions/interfaces_wireless.xml.in +++ b/interface-definitions/interfaces_wireless.xml.in @@ -17,6 +17,7 @@ <format>wlanN</format> <description>Wireless (WiFi/WLAN) interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/interfaces_wwan.xml.in b/interface-definitions/interfaces_wwan.xml.in index 552806d4e..7763cc704 100644 --- a/interface-definitions/interfaces_wwan.xml.in +++ b/interface-definitions/interfaces_wwan.xml.in @@ -17,6 +17,7 @@ <format>wwanN</format> <description>Wireless Wide Area Network interface name</description> </valueHelp> + <kind>interface</kind> </properties> <children> #include <include/interface/address-ipv4-ipv6-dhcp.xml.i> diff --git a/interface-definitions/policy_local-route.xml.in b/interface-definitions/policy_local-route.xml.in index 9f6588db8..fed3a8edc 100644 --- a/interface-definitions/policy_local-route.xml.in +++ b/interface-definitions/policy_local-route.xml.in @@ -73,7 +73,7 @@ #include <include/port-number.xml.i> </children> </node> - #include <include/interface/inbound-interface.xml.i> + #include <include/interface/dependent-error-inbound-interface.xml.i> </children> </tagNode> </children> @@ -148,7 +148,7 @@ #include <include/port-number.xml.i> </children> </node> - #include <include/interface/inbound-interface.xml.i> + #include <include/interface/dependent-error-inbound-interface.xml.i> </children> </tagNode> </children> diff --git a/interface-definitions/protocols_igmp-proxy.xml.in b/interface-definitions/protocols_igmp-proxy.xml.in index a1deeb3fc..65a5cf3c7 100644 --- a/interface-definitions/protocols_igmp-proxy.xml.in +++ b/interface-definitions/protocols_igmp-proxy.xml.in @@ -22,6 +22,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> + <dependency kind="interface" alert="error"/> </properties> <children> <leafNode name="alt-subnet"> diff --git a/interface-definitions/protocols_mpls.xml.in b/interface-definitions/protocols_mpls.xml.in index fc1864f38..b904a0740 100644 --- a/interface-definitions/protocols_mpls.xml.in +++ b/interface-definitions/protocols_mpls.xml.in @@ -574,7 +574,7 @@ </leafNode> </children> </node> - #include <include/generic-interface-multi.xml.i> + #include <include/dependent-error-generic-interface-multi.xml.i> </children> </node> </children> diff --git a/interface-definitions/protocols_pim.xml.in b/interface-definitions/protocols_pim.xml.in index 4a20c0d9b..3de986545 100644 --- a/interface-definitions/protocols_pim.xml.in +++ b/interface-definitions/protocols_pim.xml.in @@ -15,9 +15,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-error-interface-name.xml.i> </properties> <children> #include <include/bfd/bfd.xml.i> diff --git a/interface-definitions/protocols_pim6.xml.in b/interface-definitions/protocols_pim6.xml.in index 8bd3f3fee..0d6d4d1b6 100644 --- a/interface-definitions/protocols_pim6.xml.in +++ b/interface-definitions/protocols_pim6.xml.in @@ -15,9 +15,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-error-interface-name.xml.i> </properties> <children> #include <include/pim/bsm.xml.i> diff --git a/interface-definitions/qos.xml.in b/interface-definitions/qos.xml.in index aad1de629..5f3e76c2c 100644 --- a/interface-definitions/qos.xml.in +++ b/interface-definitions/qos.xml.in @@ -16,9 +16,7 @@ <format>txt</format> <description>Interface name</description> </valueHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-warning-interface-name.xml.i> </properties> <children> <leafNode name="ingress"> diff --git a/interface-definitions/service_conntrack-sync.xml.in b/interface-definitions/service_conntrack-sync.xml.in index 9483c809b..56faa4a59 100644 --- a/interface-definitions/service_conntrack-sync.xml.in +++ b/interface-definitions/service_conntrack-sync.xml.in @@ -141,6 +141,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces --bridgeable</script> </completionHelp> + <dependency kind="interface" alert="error"/> </properties> <children> <leafNode name="peer"> diff --git a/interface-definitions/service_dhcp-relay.xml.in b/interface-definitions/service_dhcp-relay.xml.in index 9fdd9581d..0fbb75598 100644 --- a/interface-definitions/service_dhcp-relay.xml.in +++ b/interface-definitions/service_dhcp-relay.xml.in @@ -10,7 +10,7 @@ </properties> <children> #include <include/generic-disable-node.xml.i> - #include <include/generic-interface-multi-broadcast.xml.i> + #include <include/dependent-warning-generic-interface-multi-broadcast.xml.i> <leafNode name="listen-interface"> <properties> <help>Interface for DHCP Relay Agent to listen for requests</help> @@ -21,9 +21,7 @@ <format>txt</format> <description>Interface name</description> </valueHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-warning-interface-name.xml.i> <multi/> </properties> </leafNode> @@ -37,9 +35,7 @@ <format>txt</format> <description>Interface name</description> </valueHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-warning-interface-name.xml.i> <multi/> </properties> </leafNode> diff --git a/interface-definitions/service_ipoe-server.xml.in b/interface-definitions/service_ipoe-server.xml.in index 27b163001..f3a7e1e3c 100644 --- a/interface-definitions/service_ipoe-server.xml.in +++ b/interface-definitions/service_ipoe-server.xml.in @@ -90,6 +90,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> + <dependency kind="interface" alert="warning"/> </properties> <children> <leafNode name="mode"> diff --git a/interface-definitions/service_mdns_repeater.xml.in b/interface-definitions/service_mdns_repeater.xml.in index 9d626bf6a..0cdb45db3 100644 --- a/interface-definitions/service_mdns_repeater.xml.in +++ b/interface-definitions/service_mdns_repeater.xml.in @@ -14,7 +14,7 @@ </properties> <children> #include <include/generic-disable-node.xml.i> - #include <include/generic-interface-multi.xml.i> + #include <include/dependent-error-generic-interface-multi.xml.i> <leafNode name="ip-version"> <properties> <help>IP address version to use</help> diff --git a/interface-definitions/service_ndp-proxy.xml.in b/interface-definitions/service_ndp-proxy.xml.in index 327ce89d5..a35457991 100644 --- a/interface-definitions/service_ndp-proxy.xml.in +++ b/interface-definitions/service_ndp-proxy.xml.in @@ -28,9 +28,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> - <constraint> - #include <include/constraint/interface-name.xml.i> - </constraint> + #include <include/constraint/dependent-error-interface-name.xml.i> </properties> <children> #include <include/generic-disable-node.xml.i> diff --git a/interface-definitions/service_ntp.xml.in b/interface-definitions/service_ntp.xml.in index 216722715..f85b5715b 100644 --- a/interface-definitions/service_ntp.xml.in +++ b/interface-definitions/service_ntp.xml.in @@ -10,10 +10,10 @@ </properties> <children> #include <include/allow-client.xml.i> - #include <include/generic-interface.xml.i> + #include <include/dependent-error-generic-interface.xml.i> #include <include/listen-address.xml.i> #include <include/source-address-ipv4-ipv6-multi.xml.i> - #include <include/source-interface.xml.i> + #include <include/dependent-error-source-interface.xml.i> #include <include/interface/vrf.xml.i> <node name="timestamp"> <properties> @@ -39,6 +39,7 @@ #include <include/constraint/interface-name.xml.i> <regex>all</regex> </constraint> + <dependency kind="interface" alert="error"/> </properties> <children> <leafNode name="receive-filter"> diff --git a/interface-definitions/service_pppoe-server.xml.in b/interface-definitions/service_pppoe-server.xml.in index 81a4a95e3..06f4225a6 100644 --- a/interface-definitions/service_pppoe-server.xml.in +++ b/interface-definitions/service_pppoe-server.xml.in @@ -61,6 +61,7 @@ <completionHelp> <script>${vyos_completion_dir}/list_interfaces</script> </completionHelp> + <dependency kind="interface" alert="warning"/> </properties> <children> <leafNode name="combined"> diff --git a/interface-definitions/system_flow-accounting.xml.in b/interface-definitions/system_flow-accounting.xml.in index 53436036e..c340fccd6 100644 --- a/interface-definitions/system_flow-accounting.xml.in +++ b/interface-definitions/system_flow-accounting.xml.in @@ -20,7 +20,7 @@ <help>NetFlow settings</help> </properties> <children> - #include <include/generic-interface-multi.xml.i> + #include <include/dependent-warning-generic-interface-multi.xml.i> <leafNode name="engine-id"> <properties> <help>NetFlow engine-id</help> @@ -112,7 +112,7 @@ <defaultValue>2055</defaultValue> </leafNode> #include <include/source-address-ipv4-ipv6.xml.i> - #include <include/source-interface.xml.i> + #include <include/dependent-warning-source-interface.xml.i> </children> </tagNode> <leafNode name="inactive-timeout"> diff --git a/interface-definitions/system_option.xml.in b/interface-definitions/system_option.xml.in index c295b2ebe..3bc58155c 100644 --- a/interface-definitions/system_option.xml.in +++ b/interface-definitions/system_option.xml.in @@ -381,7 +381,7 @@ <help>Global options used for HTTP client</help> </properties> <children> - #include <include/source-interface.xml.i> + #include <include/dependent-error-source-interface.xml.i> #include <include/source-address-ipv4-ipv6.xml.i> </children> </node> |
