summaryrefslogtreecommitdiff
path: root/interface-definitions/include
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-08-12 15:31:00 +0100
committerGitHub <noreply@github.com>2025-08-12 15:31:00 +0100
commit703031e46b7a01f022b5b83766f4aa0bf4353963 (patch)
tree7fba79247d7c1bc373d93c88809ede774b4cbf85 /interface-definitions/include
parent33b13061b55a8dbf302dcfaed1cf89b3e0f12e63 (diff)
parent1a83bde3c14ff893960c3d2921279d82fdb21f76 (diff)
downloadvyos-1x-703031e46b7a01f022b5b83766f4aa0bf4353963.tar.gz
vyos-1x-703031e46b7a01f022b5b83766f4aa0bf4353963.zip
Merge pull request #4650 from sever-sever/T7697
T7697: Merge vyos-vpp repo into vyos-1x
Diffstat (limited to 'interface-definitions/include')
-rw-r--r--interface-definitions/include/kernel-interface-tap.xml.i15
-rw-r--r--interface-definitions/include/kernel-interface-tun.xml.i15
-rw-r--r--interface-definitions/include/unformat_log2_page_size.xml.i17
-rw-r--r--interface-definitions/include/unformat_memory_size.xml.i22
-rw-r--r--interface-definitions/include/version/vpp-version.xml.i3
-rw-r--r--interface-definitions/include/vpp/acl_common_interface_ip_rule.xml.i25
-rw-r--r--interface-definitions/include/vpp/acl_port_range.xml.i18
-rw-r--r--interface-definitions/include/vpp/acl_prefix.xml.i20
-rw-r--r--interface-definitions/include/vpp/acl_tcp_flags.xml.i50
-rw-r--r--interface-definitions/include/vpp/iface_rx_mode.xml.i25
-rw-r--r--interface-definitions/include/vpp/nat_address_range.xml.i20
-rw-r--r--interface-definitions/include/vpp/nat_interface.xml.i11
-rw-r--r--interface-definitions/include/vpp/nat_protocol.xml.i30
-rw-r--r--interface-definitions/include/vpp/netlink.xml.i45
-rw-r--r--interface-definitions/include/vpp/vif.xml.i21
-rw-r--r--interface-definitions/include/vpp_host_resources.xml.i35
16 files changed, 372 insertions, 0 deletions
diff --git a/interface-definitions/include/kernel-interface-tap.xml.i b/interface-definitions/include/kernel-interface-tap.xml.i
new file mode 100644
index 000000000..83399f1f4
--- /dev/null
+++ b/interface-definitions/include/kernel-interface-tap.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from kernel-interface-tap.xml.i -->
+<leafNode name="kernel-interface">
+ <properties>
+ <help>Kernel interface name</help>
+ <valueHelp>
+ <format>vpptapN</format>
+ <description>Kernel interface name</description>
+ </valueHelp>
+ <constraint>
+ <regex>vpptap\d+</regex>
+ </constraint>
+ <constraintErrorMessage>Kernel interface must start with vpptapN</constraintErrorMessage>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/kernel-interface-tun.xml.i b/interface-definitions/include/kernel-interface-tun.xml.i
new file mode 100644
index 000000000..3cbd5ab30
--- /dev/null
+++ b/interface-definitions/include/kernel-interface-tun.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from kernel-interface-tun.xml.i -->
+<leafNode name="kernel-interface">
+ <properties>
+ <help>Kernel interface name</help>
+ <valueHelp>
+ <format>vpptunN</format>
+ <description>Kernel interface name</description>
+ </valueHelp>
+ <constraint>
+ <regex>vpptun\d+</regex>
+ </constraint>
+ <constraintErrorMessage>Kernel interface must start with vpptunN</constraintErrorMessage>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/unformat_log2_page_size.xml.i b/interface-definitions/include/unformat_log2_page_size.xml.i
new file mode 100644
index 000000000..ce6f70dc8
--- /dev/null
+++ b/interface-definitions/include/unformat_log2_page_size.xml.i
@@ -0,0 +1,17 @@
+<!-- include start from unformat_log2_page_size.xml.i -->
+<completionHelp>
+ <list>default default-hugepage</list>
+ <script>sudo ${vyos_completion_dir}/list_mem_page_size.py</script>
+</completionHelp>
+<valueHelp>
+ <format>default</format>
+ <description>Default</description>
+</valueHelp>
+<valueHelp>
+ <format>default-hugepage</format>
+ <description>Default huge-page</description>
+</valueHelp>
+<constraint>
+ <regex>(default|default-hugepage|4K|8K|1024K|64K|256K|2048K|4096K|16384K|262144K|1048576K|16777216K|1M|2M|4M|16M|256M|1024M|16384M|1G|16G)</regex>
+</constraint>
+<!-- include end -->
diff --git a/interface-definitions/include/unformat_memory_size.xml.i b/interface-definitions/include/unformat_memory_size.xml.i
new file mode 100644
index 000000000..bb8f4ae67
--- /dev/null
+++ b/interface-definitions/include/unformat_memory_size.xml.i
@@ -0,0 +1,22 @@
+<!-- include start from unformat_memory_size.xml.i -->
+<valueHelp>
+ <format>&lt;number&gt;</format>
+ <description>byte</description>
+</valueHelp>
+<valueHelp>
+ <format>&lt;number&gt;K</format>
+ <description>Kilobyte</description>
+</valueHelp>
+<valueHelp>
+ <format>&lt;number&gt;M</format>
+ <description>Megabyte</description>
+</valueHelp>
+<valueHelp>
+ <format>&lt;number&gt;G</format>
+ <description>Gigabyte</description>
+</valueHelp>
+<constraint>
+ <validator name="numeric" argument="--range 0-4294967295"/>
+ <regex>(\d+|\d+K|\d+M|\d+G)</regex>
+</constraint>
+<!-- include end -->
diff --git a/interface-definitions/include/version/vpp-version.xml.i b/interface-definitions/include/version/vpp-version.xml.i
new file mode 100644
index 000000000..96a69c92f
--- /dev/null
+++ b/interface-definitions/include/version/vpp-version.xml.i
@@ -0,0 +1,3 @@
+<!-- include start from include/version/vpp-version.xml.i -->
+<syntaxVersion component='vpp' version='1'></syntaxVersion>
+<!-- include end --> \ No newline at end of file
diff --git a/interface-definitions/include/vpp/acl_common_interface_ip_rule.xml.i b/interface-definitions/include/vpp/acl_common_interface_ip_rule.xml.i
new file mode 100644
index 000000000..a719a6223
--- /dev/null
+++ b/interface-definitions/include/vpp/acl_common_interface_ip_rule.xml.i
@@ -0,0 +1,25 @@
+<!-- include start from vpp/acl_common_interface_ip_rule.xml.i -->
+<tagNode name="acl-tag">
+ <properties>
+ <help>ACL rule (tag) number</help>
+ <valueHelp>
+ <format>u32</format>
+ <description>Number</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-4294967295"/>
+ </constraint>
+ <constraintErrorMessage>Number must be between 1 and 4294967295</constraintErrorMessage>
+ </properties>
+ <children>
+ <leafNode name="tag-name">
+ <properties>
+ <help>ACL tag name</help>
+ <completionHelp>
+ <path>vpp acl ip tag-name</path>
+ </completionHelp>
+ </properties>
+ </leafNode>
+ </children>
+</tagNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/acl_port_range.xml.i b/interface-definitions/include/vpp/acl_port_range.xml.i
new file mode 100644
index 000000000..26bd2de45
--- /dev/null
+++ b/interface-definitions/include/vpp/acl_port_range.xml.i
@@ -0,0 +1,18 @@
+<!-- include start from vpp/acl_port_range.xml.i -->
+<leafNode name="port">
+ <properties>
+ <help>Port number or range</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>Numeric IP port</description>
+ </valueHelp>
+ <valueHelp>
+ <format>range</format>
+ <description>Numbered port range (e.g., 1001-1005)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="port-range"/>
+ </constraint>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/acl_prefix.xml.i b/interface-definitions/include/vpp/acl_prefix.xml.i
new file mode 100644
index 000000000..790153c8f
--- /dev/null
+++ b/interface-definitions/include/vpp/acl_prefix.xml.i
@@ -0,0 +1,20 @@
+<!-- include start from vpp/acl_prefix.xml.i -->
+<leafNode name="prefix">
+ <properties>
+ <help>IP prefix</help>
+ <valueHelp>
+ <format>ipv4net</format>
+ <description>IPv4 prefix</description>
+ </valueHelp>
+ <valueHelp>
+ <format>ipv6net</format>
+ <description>IPv6 prefix</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-prefix"/>
+ <validator name="ipv6-prefix"/>
+ </constraint>
+ </properties>
+</leafNode>
+<!-- include end -->
+
diff --git a/interface-definitions/include/vpp/acl_tcp_flags.xml.i b/interface-definitions/include/vpp/acl_tcp_flags.xml.i
new file mode 100644
index 000000000..da17f3fe5
--- /dev/null
+++ b/interface-definitions/include/vpp/acl_tcp_flags.xml.i
@@ -0,0 +1,50 @@
+<!-- include start from vpp/acl_tcp_flags.xml.i -->
+<leafNode name="syn">
+ <properties>
+ <help>Synchronise flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="ack">
+ <properties>
+ <help>Acknowledge flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="fin">
+ <properties>
+ <help>Finish flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="rst">
+ <properties>
+ <help>Reset flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="urg">
+ <properties>
+ <help>Urgent flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="psh">
+ <properties>
+ <help>Push flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="ecn">
+ <properties>
+ <help>Explicit Congestion Notification flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<leafNode name="cwr">
+ <properties>
+ <help>Congestion Window Reduced flag</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/iface_rx_mode.xml.i b/interface-definitions/include/vpp/iface_rx_mode.xml.i
new file mode 100644
index 000000000..374654b08
--- /dev/null
+++ b/interface-definitions/include/vpp/iface_rx_mode.xml.i
@@ -0,0 +1,25 @@
+<!-- include start from vpp/iface_rx_mode.xml.i -->
+<leafNode name="rx-mode">
+ <properties>
+ <help>Receive packet processing mode</help>
+ <completionHelp>
+ <list>polling interrupt adaptive</list>
+ </completionHelp>
+ <valueHelp>
+ <format>polling</format>
+ <description>Constantly check for new data</description>
+ </valueHelp>
+ <valueHelp>
+ <format>interrupt</format>
+ <description>Interrupt mode</description>
+ </valueHelp>
+ <valueHelp>
+ <format>adaptive</format>
+ <description>Adaptive mode</description>
+ </valueHelp>
+ <constraint>
+ <regex>(polling|interrupt|adaptive)</regex>
+ </constraint>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/nat_address_range.xml.i b/interface-definitions/include/vpp/nat_address_range.xml.i
new file mode 100644
index 000000000..48648f91a
--- /dev/null
+++ b/interface-definitions/include/vpp/nat_address_range.xml.i
@@ -0,0 +1,20 @@
+<!-- include start from vpp/nat_address_range.xml.i -->
+<leafNode name="address">
+ <properties>
+ <help>IP address or range</help>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>IPv4 address</description>
+ </valueHelp>
+ <valueHelp>
+ <format>ipv4range</format>
+ <description>IPv4 address range</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-address"/>
+ <validator name="ipv4-range"/>
+ </constraint>
+ <multi/>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/nat_interface.xml.i b/interface-definitions/include/vpp/nat_interface.xml.i
new file mode 100644
index 000000000..20a7356bf
--- /dev/null
+++ b/interface-definitions/include/vpp/nat_interface.xml.i
@@ -0,0 +1,11 @@
+<!-- include start from vpp/nat_interface.xml.i -->
+<leafNode name="interface">
+ <properties>
+ <help>Add IP address from an interface</help>
+ <completionHelp>
+ <script>${vyos_completion_dir}/list_interfaces</script>
+ </completionHelp>
+ <multi/>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/nat_protocol.xml.i b/interface-definitions/include/vpp/nat_protocol.xml.i
new file mode 100644
index 000000000..b88fd2b62
--- /dev/null
+++ b/interface-definitions/include/vpp/nat_protocol.xml.i
@@ -0,0 +1,30 @@
+<!-- include start from vpp/nat_protocol.xml.i -->
+<leafNode name="protocol">
+ <properties>
+ <help>Protocol</help>
+ <completionHelp>
+ <list>tcp udp icmp all</list>
+ </completionHelp>
+ <valueHelp>
+ <format>all</format>
+ <description>All protocols (TCP, UDP, and ICMP)</description>
+ </valueHelp>
+ <valueHelp>
+ <format>icmp</format>
+ <description>Internet Control Message Protocol (ICMP)</description>
+ </valueHelp>
+ <valueHelp>
+ <format>tcp</format>
+ <description>Transmission Control Protocol (TCP)</description>
+ </valueHelp>
+ <valueHelp>
+ <format>udp</format>
+ <description>User Datagram Protocol (UDP)</description>
+ </valueHelp>
+ <constraint>
+ <regex>(tcp|udp|icmp|all)</regex>
+ </constraint>
+ </properties>
+ <defaultValue>all</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/netlink.xml.i b/interface-definitions/include/vpp/netlink.xml.i
new file mode 100644
index 000000000..903100d00
--- /dev/null
+++ b/interface-definitions/include/vpp/netlink.xml.i
@@ -0,0 +1,45 @@
+<!-- include start from vpp/netlink.xml.i -->
+<node name="netlink">
+ <properties>
+ <help>Netlink options</help>
+ </properties>
+ <children>
+ <leafNode name="rx-buffer-size">
+ <properties>
+ <help>Receive buffer size</help>
+ <valueHelp>
+ <format>u32:0-4294967295</format>
+ <description>Receive buffer size</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-4294967295"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ <leafNode name="batch-size">
+ <properties>
+ <help>Batch size</help>
+ <valueHelp>
+ <format>u32:0-4294967295</format>
+ <description>Batch size</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-4294967295"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ <leafNode name="batch-delay-ms">
+ <properties>
+ <help>Batch delay</help>
+ <valueHelp>
+ <format>u32:0-4294967295</format>
+ <description>Batch delay (in ms)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-4294967295"/>
+ </constraint>
+ </properties>
+ </leafNode>
+</children>
+</node>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp/vif.xml.i b/interface-definitions/include/vpp/vif.xml.i
new file mode 100644
index 000000000..8f0e9772f
--- /dev/null
+++ b/interface-definitions/include/vpp/vif.xml.i
@@ -0,0 +1,21 @@
+<!-- include start from vpp/vif.xml.i -->
+<tagNode name="vif">
+ <properties>
+ <help>Virtual Local Area Network (VLAN) ID</help>
+ <valueHelp>
+ <format>u32:0-4094</format>
+ <description>Virtual Local Area Network (VLAN) ID</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-4094"/>
+ </constraint>
+ <constraintErrorMessage>VLAN ID must be between 0 and 4094</constraintErrorMessage>
+ </properties>
+ <children>
+ #include <include/generic-description.xml.i>
+ #include <include/interface/address-ipv4-ipv6-dhcp.xml.i>
+ #include <include/interface/disable.xml.i>
+ #include <include/interface/mtu-68-16000.xml.i>
+ </children>
+</tagNode>
+<!-- include end -->
diff --git a/interface-definitions/include/vpp_host_resources.xml.i b/interface-definitions/include/vpp_host_resources.xml.i
new file mode 100644
index 000000000..1706c8c87
--- /dev/null
+++ b/interface-definitions/include/vpp_host_resources.xml.i
@@ -0,0 +1,35 @@
+<!-- include start from vpp_host_resources.xml.i -->
+<node name="host-resources">
+ <properties>
+ <help>Host resources control</help>
+ </properties>
+ <children>
+ <leafNode name="max-map-count">
+ <properties>
+ <help>Maximum number of memory map areas a process may have</help>
+ <valueHelp>
+ <format>u32:65535-2147483647</format>
+ <description>Areas count</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 65535-2147483647"/>
+ </constraint>
+ </properties>
+ <defaultValue>65535</defaultValue>
+ </leafNode>
+ <leafNode name="shmmax">
+ <properties>
+ <help>Maximum shared memory segment size that can be created</help>
+ <valueHelp>
+ <format>u32:0-18446744073709551612</format>
+ <description>Size in bytes</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-18446744073709551612"/>
+ </constraint>
+ </properties>
+ <defaultValue>2147483648</defaultValue>
+ </leafNode>
+ </children>
+</node>
+<!-- include end -->