From 0deb1709930f620e97ff9a29afc8a86e950f0758 Mon Sep 17 00:00:00 2001
From: Christian Poessinger <christian@poessinger.com>
Date: Sun, 29 Aug 2021 14:29:19 +0200
Subject: xml: add missing "u32:" value declarator on integer ranges

(cherry picked from commit 794f193d11c8c1b5fed78f4e40280480446ab593)
---
 interface-definitions/bcast-relay.xml.in           |  5 ++-
 interface-definitions/dhcp-relay.xml.in            |  4 +--
 interface-definitions/dhcp-server.xml.in           |  2 +-
 interface-definitions/dhcpv6-relay.xml.in          |  2 +-
 interface-definitions/dhcpv6-server.xml.in         | 13 ++++----
 interface-definitions/dns-dynamic.xml.in           |  2 +-
 interface-definitions/dns-forwarding.xml.in        |  4 +--
 interface-definitions/flow-accounting-conf.xml.in  | 16 +++++-----
 interface-definitions/https.xml.in                 |  9 +++---
 interface-definitions/igmp-proxy.xml.in            |  2 +-
 .../include/accel-ppp/ppp-interface-cache.xml.i    |  2 +-
 .../include/accel-ppp/radius-additions.xml.i       | 12 ++++----
 .../include/interface/arp-cache-timeout.xml.i      |  2 +-
 .../include/interface/dhcpv6-options.xml.i         |  4 +--
 .../interface/ipv6-dup-addr-detect-transmits.xml.i |  8 ++---
 .../include/interface/mtu-1200-16000.xml.i         |  2 +-
 .../include/interface/mtu-1450-16000.xml.i         |  2 +-
 .../include/interface/mtu-64-8024.xml.i            |  2 +-
 .../include/interface/mtu-68-1500.xml.i            |  2 +-
 .../include/interface/mtu-68-16000.xml.i           |  2 +-
 .../include/interface/parameters-flowlabel.xml.i   | 11 +++++--
 .../include/interface/parameters-tos.xml.i         |  2 +-
 .../include/interface/parameters-ttl.xml.i         |  6 ++--
 .../include/interface/vif-s.xml.i                  |  4 +++
 interface-definitions/include/interface/vif.xml.i  |  2 +-
 interface-definitions/include/nat-rule.xml.i       |  2 +-
 interface-definitions/interfaces-bridge.xml.in     | 18 +++++------
 interface-definitions/interfaces-l2tpv3.xml.in     | 12 ++++----
 interface-definitions/interfaces-macsec.xml.in     |  6 ++--
 interface-definitions/interfaces-openvpn.xml.in    | 10 +++---
 interface-definitions/interfaces-tunnel.xml.in     |  8 ++---
 interface-definitions/interfaces-wireguard.xml.in  |  2 +-
 interface-definitions/interfaces-wireless.xml.in   |  2 +-
 interface-definitions/lldp.xml.in                  |  2 +-
 interface-definitions/protocols-igmp.xml.in        | 15 ++++++---
 interface-definitions/protocols-multicast.xml.in   |  4 +--
 interface-definitions/protocols-pim.xml.in         |  6 ++--
 interface-definitions/service_pppoe-server.xml.in  |  4 +--
 interface-definitions/service_router-advert.xml.in | 36 +++++++++++-----------
 interface-definitions/ssh.xml.in                   |  2 +-
 interface-definitions/vpn_l2tp.xml.in              |  4 +--
 interface-definitions/vrf.xml.in                   |  6 ++--
 42 files changed, 138 insertions(+), 123 deletions(-)

diff --git a/interface-definitions/bcast-relay.xml.in b/interface-definitions/bcast-relay.xml.in
index 1b354d885..a0f73a03b 100644
--- a/interface-definitions/bcast-relay.xml.in
+++ b/interface-definitions/bcast-relay.xml.in
@@ -1,5 +1,4 @@
 <?xml version="1.0"?>
-<!-- UDP broadcast relay configuration -->
 <interfaceDefinition>
   <node name="service">
     <children>
@@ -14,8 +13,8 @@
             <properties>
               <help>Unique ID for each UDP port to forward</help>
               <valueHelp>
-                <format>1-99</format>
-                <description>Numerical ID #</description>
+                <format>u32:1-99</format>
+                <description>Broadcast relay instance ID</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 1-99"/>
diff --git a/interface-definitions/dhcp-relay.xml.in b/interface-definitions/dhcp-relay.xml.in
index 8c95239d9..0d485ef80 100644
--- a/interface-definitions/dhcp-relay.xml.in
+++ b/interface-definitions/dhcp-relay.xml.in
@@ -27,7 +27,7 @@
                 <properties>
                   <help>Policy to discard packets that have reached specified hop-count</help>
                   <valueHelp>
-                    <format>1-255</format>
+                    <format>u32:1-255</format>
                     <description>Hop count (default: 10)</description>
                   </valueHelp>
                   <constraint>
@@ -41,7 +41,7 @@
                 <properties>
                   <help>Maximum packet size to send to a DHCPv4/BOOTP server</help>
                   <valueHelp>
-                    <format>64-1400</format>
+                    <format>u32:64-1400</format>
                     <description>Maximum packet size (default: 576)</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/dhcp-server.xml.in b/interface-definitions/dhcp-server.xml.in
index 015500043..bafd6f6a2 100644
--- a/interface-definitions/dhcp-server.xml.in
+++ b/interface-definitions/dhcp-server.xml.in
@@ -96,7 +96,7 @@
                     <properties>
                       <help>Specifies the clients subnet mask as per RFC 950. If unset, subnet declaration is used.</help>
                       <valueHelp>
-                        <format>0-32</format>
+                        <format>u32:0-32</format>
                         <description>DHCP client prefix length must be 0 to 32</description>
                       </valueHelp>
                       <constraint>
diff --git a/interface-definitions/dhcpv6-relay.xml.in b/interface-definitions/dhcpv6-relay.xml.in
index 308f94a01..7162cf353 100644
--- a/interface-definitions/dhcpv6-relay.xml.in
+++ b/interface-definitions/dhcpv6-relay.xml.in
@@ -35,7 +35,7 @@
             <properties>
               <help>Maximum hop count for which requests will be processed</help>
               <valueHelp>
-                <format>1-255</format>
+                <format>u32:1-255</format>
                 <description>Hop count (default: 10)</description>
               </valueHelp>
               <constraint>
diff --git a/interface-definitions/dhcpv6-server.xml.in b/interface-definitions/dhcpv6-server.xml.in
index 5d6c64685..95b1e5602 100644
--- a/interface-definitions/dhcpv6-server.xml.in
+++ b/interface-definitions/dhcpv6-server.xml.in
@@ -1,5 +1,4 @@
 <?xml version="1.0"?>
-<!-- DHCPv6 server configuration -->
 <interfaceDefinition>
   <node name="service">
     <children>
@@ -34,7 +33,7 @@
             <properties>
               <help>Preference of this DHCPv6 server compared with others</help>
               <valueHelp>
-                <format>0-255</format>
+                <format>u32:0-255</format>
                 <description>DHCPv6 server preference (0-255)</description>
               </valueHelp>
               <constraint>
@@ -62,7 +61,7 @@
                     <properties>
                       <help>Time (in seconds) that stateless clients should wait between refreshing the information they were given</help>
                       <valueHelp>
-                        <format>1-4294967295</format>
+                        <format>u32:1-4294967295</format>
                         <description>DHCPv6 information refresh time</description>
                       </valueHelp>
                       <constraint>
@@ -161,7 +160,7 @@
                         <properties>
                           <help>Default time (in seconds) that will be assigned to a lease</help>
                           <valueHelp>
-                            <format>1-4294967295</format>
+                            <format>u32:1-4294967295</format>
                             <description>DHCPv6 valid lifetime</description>
                           </valueHelp>
                           <constraint>
@@ -173,7 +172,7 @@
                         <properties>
                           <help>Maximum time (in seconds) that will be assigned to a lease</help>
                           <valueHelp>
-                            <format>1-4294967295</format>
+                            <format>u32:1-4294967295</format>
                             <description>Maximum lease time in seconds</description>
                           </valueHelp>
                           <constraint>
@@ -185,7 +184,7 @@
                         <properties>
                           <help>Minimum time (in seconds) that will be assigned to a lease</help>
                           <valueHelp>
-                            <format>1-4294967295</format>
+                            <format>u32:1-4294967295</format>
                             <description>Minimum lease time in seconds</description>
                           </valueHelp>
                           <constraint>
@@ -273,7 +272,7 @@
                             <properties>
                               <help>Length in bits of prefixes to be delegated</help>
                               <valueHelp>
-                                <format>32-64</format>
+                                <format>u32:32-64</format>
                                 <description>Delagated prefix length (32-64)</description>
                               </valueHelp>
                               <constraint>
diff --git a/interface-definitions/dns-dynamic.xml.in b/interface-definitions/dns-dynamic.xml.in
index b0b9158c8..250642691 100644
--- a/interface-definitions/dns-dynamic.xml.in
+++ b/interface-definitions/dns-dynamic.xml.in
@@ -49,7 +49,7 @@
                         <properties>
                           <help>Time To Live (default: 600)</help>
                           <valueHelp>
-                            <format>1-86400</format>
+                            <format>u32:1-86400</format>
                             <description>DNS forwarding cache size</description>
                           </valueHelp>
                           <constraint>
diff --git a/interface-definitions/dns-forwarding.xml.in b/interface-definitions/dns-forwarding.xml.in
index 66b4db403..9b58788c6 100644
--- a/interface-definitions/dns-forwarding.xml.in
+++ b/interface-definitions/dns-forwarding.xml.in
@@ -18,7 +18,7 @@
                 <properties>
                   <help>DNS forwarding cache size (default: 10000)</help>
                   <valueHelp>
-                    <format>0-10000</format>
+                    <format>u32:0-10000</format>
                     <description>DNS forwarding cache size</description>
                   </valueHelp>
                   <constraint>
@@ -133,7 +133,7 @@
                 <properties>
                   <help>Maximum amount of time negative entries are cached (default: 3600)</help>
                   <valueHelp>
-                    <format>0-7200</format>
+                    <format>u32:0-7200</format>
                     <description>Seconds to cache NXDOMAIN entries</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/flow-accounting-conf.xml.in b/interface-definitions/flow-accounting-conf.xml.in
index b3980d9e2..b0f308afd 100644
--- a/interface-definitions/flow-accounting-conf.xml.in
+++ b/interface-definitions/flow-accounting-conf.xml.in
@@ -267,7 +267,7 @@
                     <properties>
                       <help>Expiry scan interval</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>Expiry scan interval (default 60)</description>
                       </valueHelp>
                       <constraint>
@@ -279,7 +279,7 @@
                     <properties>
                       <help>Generic flow timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>Generic flow timeout in seconds (default 3600)</description>
                       </valueHelp>
                       <constraint>
@@ -291,7 +291,7 @@
                     <properties>
                       <help>ICMP timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>ICMP timeout in seconds (default 300)</description>
                       </valueHelp>
                       <constraint>
@@ -303,7 +303,7 @@
                     <properties>
                       <help>Max active timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>Max active timeout in seconds (default 604800)</description>
                       </valueHelp>
                       <constraint>
@@ -315,7 +315,7 @@
                     <properties>
                       <help>TCP finish timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>TCP FIN timeout in seconds (default 300)</description>
                       </valueHelp>
                       <constraint>
@@ -327,7 +327,7 @@
                     <properties>
                       <help>TCP generic timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>TCP generic timeout in seconds (default 3600)</description>
                       </valueHelp>
                       <constraint>
@@ -339,7 +339,7 @@
                     <properties>
                       <help>TCP reset timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>TCP RST timeout in seconds (default 120)</description>
                       </valueHelp>
                       <constraint>
@@ -351,7 +351,7 @@
                     <properties>
                       <help>UDP timeout value</help>
                       <valueHelp>
-                        <format>0-2147483647</format>
+                        <format>u32:0-2147483647</format>
                         <description>UDP timeout in seconds (default 300)</description>
                       </valueHelp>
                       <constraint>
diff --git a/interface-definitions/https.xml.in b/interface-definitions/https.xml.in
index f3d81c3ed..ccb77910a 100644
--- a/interface-definitions/https.xml.in
+++ b/interface-definitions/https.xml.in
@@ -1,5 +1,4 @@
 <?xml version="1.0"?>
-<!-- HTTPS configuration -->
 <interfaceDefinition>
   <node name="service">
     <children>
@@ -47,7 +46,7 @@
                 <properties>
                   <help>Port to listen for HTTPS requests; default 443</help>
                   <valueHelp>
-                    <format>1-65535</format>
+                    <format>u32:1-65535</format>
                     <description>Numeric IP port</description>
                   </valueHelp>
                   <constraint>
@@ -150,9 +149,9 @@
                     </properties>
                   </leafNode>
                   <leafNode name="email">
-                      <properties>
-                          <help>Email address to associate with certificate</help>
-                      </properties>
+                    <properties>
+                      <help>Email address to associate with certificate</help>
+                    </properties>
                   </leafNode>
                 </children>
               </node>
diff --git a/interface-definitions/igmp-proxy.xml.in b/interface-definitions/igmp-proxy.xml.in
index d0f44eada..91c912d8b 100644
--- a/interface-definitions/igmp-proxy.xml.in
+++ b/interface-definitions/igmp-proxy.xml.in
@@ -65,7 +65,7 @@
                 <properties>
                   <help>TTL threshold (default: 1)</help>
                   <valueHelp>
-                    <format>1-255</format>
+                    <format>u32:1-255</format>
                     <description>TTL threshold for the interfaces (default: 1)</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/include/accel-ppp/ppp-interface-cache.xml.i b/interface-definitions/include/accel-ppp/ppp-interface-cache.xml.i
index 9f223d7ed..019601c85 100644
--- a/interface-definitions/include/accel-ppp/ppp-interface-cache.xml.i
+++ b/interface-definitions/include/accel-ppp/ppp-interface-cache.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>PPP interface cache</help>
     <valueHelp>
-      <format>1-256000</format>
+      <format>u32:1-256000</format>
       <description>Count of interfaces to keep in cache</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/accel-ppp/radius-additions.xml.i b/interface-definitions/include/accel-ppp/radius-additions.xml.i
index e65088c43..44ec64d7f 100644
--- a/interface-definitions/include/accel-ppp/radius-additions.xml.i
+++ b/interface-definitions/include/accel-ppp/radius-additions.xml.i
@@ -5,7 +5,7 @@
       <properties>
         <help>Maximum jitter value in seconds to be applied to accounting information interval</help>
         <valueHelp>
-          <format>1-60</format>
+          <format>u32:1-60</format>
           <description>Maximum jitter value in seconds</description>
         </valueHelp>
         <constraint>
@@ -20,7 +20,7 @@
           <properties>
             <help>Accounting port</help>
             <valueHelp>
-              <format>1-65535</format>
+              <format>u32:1-65535</format>
               <description>Numeric IP port (default: 1813)</description>
             </valueHelp>
             <constraint>
@@ -34,7 +34,7 @@
           <properties>
             <help>Mark server unavailable for &lt;n&gt; seconds on failure</help>
             <valueHelp>
-              <format>0-600</format>
+              <format>u32:0-600</format>
               <description>Fail time penalty</description>
             </valueHelp>
             <constraint>
@@ -50,7 +50,7 @@
       <properties>
         <help>Timeout in seconds to wait response from RADIUS server</help>
         <valueHelp>
-          <format>1-60</format>
+          <format>u32:1-60</format>
           <description>Timeout in seconds</description>
         </valueHelp>
         <constraint>
@@ -64,7 +64,7 @@
       <properties>
         <help>Timeout for Interim-Update packets, terminate session afterwards (default 3 seconds)</help>
         <valueHelp>
-          <format>0-60</format>
+          <format>u32:0-60</format>
           <description>Timeout in seconds, 0 to keep active</description>
         </valueHelp>
         <constraint>
@@ -78,7 +78,7 @@
       <properties>
         <help>Number of tries to send Access-Request/Accounting-Request queries</help>
         <valueHelp>
-          <format>1-20</format>
+          <format>u32:1-20</format>
           <description>Maximum tries</description>
         </valueHelp>
         <constraint>
diff --git a/interface-definitions/include/interface/arp-cache-timeout.xml.i b/interface-definitions/include/interface/arp-cache-timeout.xml.i
index b269fecd8..70e69e14a 100644
--- a/interface-definitions/include/interface/arp-cache-timeout.xml.i
+++ b/interface-definitions/include/interface/arp-cache-timeout.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>ARP cache entry timeout in seconds</help>
     <valueHelp>
-      <format>1-86400</format>
+      <format>u32:1-86400</format>
       <description>ARP cache entry timout in seconds (default 30)</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/dhcpv6-options.xml.i b/interface-definitions/include/interface/dhcpv6-options.xml.i
index a569659a4..a0cac34f1 100644
--- a/interface-definitions/include/interface/dhcpv6-options.xml.i
+++ b/interface-definitions/include/interface/dhcpv6-options.xml.i
@@ -38,7 +38,7 @@
           <properties>
             <help>Request IPv6 prefix length from peer</help>
             <valueHelp>
-              <format>32-64</format>
+              <format>u32:32-64</format>
               <description>Length of delegated prefix</description>
             </valueHelp>
             <constraint>
@@ -71,7 +71,7 @@
               <properties>
                 <help>Interface site-Level aggregator (SLA)</help>
                 <valueHelp>
-                  <format>0-128</format>
+                  <format>u32:0-128</format>
                   <description>Decimal integer which fits in the length of SLA IDs</description>
                 </valueHelp>
                 <constraint>
diff --git a/interface-definitions/include/interface/ipv6-dup-addr-detect-transmits.xml.i b/interface-definitions/include/interface/ipv6-dup-addr-detect-transmits.xml.i
index 2b5ec0281..babe6d20f 100644
--- a/interface-definitions/include/interface/ipv6-dup-addr-detect-transmits.xml.i
+++ b/interface-definitions/include/interface/ipv6-dup-addr-detect-transmits.xml.i
@@ -3,12 +3,12 @@
   <properties>
     <help>Number of NS messages to send while performing DAD (default: 1)</help>
     <valueHelp>
-      <format>1-n</format>
-      <description>Number of NS messages to send while performing DAD</description>
+      <format>u32:0</format>
+      <description>Disable Duplicate Address Dectection (DAD)</description>
     </valueHelp>
     <valueHelp>
-      <format>0</format>
-      <description>Disable Duplicate Address Dectection (DAD)</description>
+      <format>u32:1-n</format>
+      <description>Number of NS messages to send while performing DAD</description>
     </valueHelp>
     <constraint>
       <validator name="numeric" argument="--non-negative"/>
diff --git a/interface-definitions/include/interface/mtu-1200-16000.xml.i b/interface-definitions/include/interface/mtu-1200-16000.xml.i
index 3241ba912..730c6e00d 100644
--- a/interface-definitions/include/interface/mtu-1200-16000.xml.i
+++ b/interface-definitions/include/interface/mtu-1200-16000.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Maximum Transmission Unit (MTU)</help>
     <valueHelp>
-      <format>1200-16000</format>
+      <format>u32:1200-16000</format>
       <description>Maximum Transmission Unit in byte</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/mtu-1450-16000.xml.i b/interface-definitions/include/interface/mtu-1450-16000.xml.i
index 0a35bbbaa..96cfa7054 100644
--- a/interface-definitions/include/interface/mtu-1450-16000.xml.i
+++ b/interface-definitions/include/interface/mtu-1450-16000.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Maximum Transmission Unit (MTU)</help>
     <valueHelp>
-      <format>1450-16000</format>
+      <format>u32:1450-16000</format>
       <description>Maximum Transmission Unit in byte</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/mtu-64-8024.xml.i b/interface-definitions/include/interface/mtu-64-8024.xml.i
index f75de02ba..3719ece24 100644
--- a/interface-definitions/include/interface/mtu-64-8024.xml.i
+++ b/interface-definitions/include/interface/mtu-64-8024.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Maximum Transmission Unit (MTU)</help>
     <valueHelp>
-      <format>64-8024</format>
+      <format>u32:64-8024</format>
       <description>Maximum Transmission Unit in byte</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/mtu-68-1500.xml.i b/interface-definitions/include/interface/mtu-68-1500.xml.i
index 9e6fe8760..d74cdfa9c 100644
--- a/interface-definitions/include/interface/mtu-68-1500.xml.i
+++ b/interface-definitions/include/interface/mtu-68-1500.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Maximum Transmission Unit (MTU)</help>
     <valueHelp>
-      <format>68-1500</format>
+      <format>u32:68-1500</format>
       <description>Maximum Transmission Unit in byte</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/mtu-68-16000.xml.i b/interface-definitions/include/interface/mtu-68-16000.xml.i
index 83af7bbd4..41340fbf3 100644
--- a/interface-definitions/include/interface/mtu-68-16000.xml.i
+++ b/interface-definitions/include/interface/mtu-68-16000.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Maximum Transmission Unit (MTU)</help>
     <valueHelp>
-      <format>68-16000</format>
+      <format>u32:68-16000</format>
       <description>Maximum Transmission Unit in byte</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/parameters-flowlabel.xml.i b/interface-definitions/include/interface/parameters-flowlabel.xml.i
index f5e868a64..a89bb13f1 100644
--- a/interface-definitions/include/interface/parameters-flowlabel.xml.i
+++ b/interface-definitions/include/interface/parameters-flowlabel.xml.i
@@ -2,9 +2,16 @@
 <leafNode name="flowlabel">
   <properties>
     <help>Specifies the flow label to use in outgoing packets</help>
+    <completionHelp>
+      <list>inherit</list>
+    </completionHelp>
     <valueHelp>
-      <format>0x0-0x0FFFFF</format>
-      <description>Tunnel key, 'inherit' or hex value</description>
+      <format>inherit</format>
+      <description>Copy field from original header</description>
+    </valueHelp>
+    <valueHelp>
+      <format>0x0-0x0fffff</format>
+      <description>Tunnel key, or hex value</description>
     </valueHelp>
     <constraint>
       <regex>^((0x){0,1}(0?[0-9A-Fa-f]{1,5})|inherit)$</regex>
diff --git a/interface-definitions/include/interface/parameters-tos.xml.i b/interface-definitions/include/interface/parameters-tos.xml.i
index 83b4e0671..1b342a43e 100644
--- a/interface-definitions/include/interface/parameters-tos.xml.i
+++ b/interface-definitions/include/interface/parameters-tos.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Specifies TOS value to use in outgoing packets</help>
     <valueHelp>
-      <format>0-99</format>
+      <format>u32:0-99</format>
       <description>Type of Service (TOS)</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/parameters-ttl.xml.i b/interface-definitions/include/interface/parameters-ttl.xml.i
index 21a5e5cd9..8ef8c9149 100644
--- a/interface-definitions/include/interface/parameters-ttl.xml.i
+++ b/interface-definitions/include/interface/parameters-ttl.xml.i
@@ -3,11 +3,11 @@
   <properties>
     <help>Specifies TTL value to use in outgoing packets</help>
     <valueHelp>
-      <format>0</format>
-      <description>Copy value from original IP header</description>
+      <format>u32:0</format>
+      <description>Inherit - copy value from original IP header</description>
     </valueHelp>
     <valueHelp>
-      <format>1-255</format>
+      <format>u32:1-255</format>
       <description>Time to Live</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/interface/vif-s.xml.i b/interface-definitions/include/interface/vif-s.xml.i
index a3193e77b..7a41bb242 100644
--- a/interface-definitions/include/interface/vif-s.xml.i
+++ b/interface-definitions/include/interface/vif-s.xml.i
@@ -2,6 +2,10 @@
 <tagNode name="vif-s">
   <properties>
     <help>QinQ TAG-S Virtual Local Area Network (VLAN) ID</help>
+    <valueHelp>
+      <format>u32:0-4094</format>
+      <description>QinQ Virtual Local Area Network (VLAN) ID</description>
+    </valueHelp>
     <constraint>
       <validator name="numeric" argument="--range 0-4094"/>
     </constraint>
diff --git a/interface-definitions/include/interface/vif.xml.i b/interface-definitions/include/interface/vif.xml.i
index f58fbff84..fdf09c5f9 100644
--- a/interface-definitions/include/interface/vif.xml.i
+++ b/interface-definitions/include/interface/vif.xml.i
@@ -3,7 +3,7 @@
   <properties>
     <help>Virtual Local Area Network (VLAN) ID</help>
     <valueHelp>
-      <format>0-4094</format>
+      <format>u32:0-4094</format>
       <description>Virtual Local Area Network (VLAN) ID</description>
     </valueHelp>
     <constraint>
diff --git a/interface-definitions/include/nat-rule.xml.i b/interface-definitions/include/nat-rule.xml.i
index 579d19bdd..084f1f722 100644
--- a/interface-definitions/include/nat-rule.xml.i
+++ b/interface-definitions/include/nat-rule.xml.i
@@ -278,7 +278,7 @@
           <description>Robust Header Compression</description>
         </valueHelp>
         <valueHelp>
-          <format>0-255</format>
+          <format>u32:0-255</format>
           <description>IP protocol number</description>
         </valueHelp>
         <constraint>
diff --git a/interface-definitions/interfaces-bridge.xml.in b/interface-definitions/interfaces-bridge.xml.in
index ddfc5ade4..144f43f32 100644
--- a/interface-definitions/interfaces-bridge.xml.in
+++ b/interface-definitions/interfaces-bridge.xml.in
@@ -21,11 +21,11 @@
             <properties>
               <help>MAC address aging interval</help>
               <valueHelp>
-                <format>0</format>
+                <format>u32:0</format>
                 <description>Disable MAC address learning (always flood)</description>
               </valueHelp>
               <valueHelp>
-                <format>10-1000000</format>
+                <format>u32:10-1000000</format>
                 <description>MAC address aging time in seconds (default: 300)</description>
               </valueHelp>
               <constraint>
@@ -45,7 +45,7 @@
             <properties>
               <help>Forwarding delay</help>
               <valueHelp>
-                <format>0-200</format>
+                <format>u32:0-200</format>
                 <description>Spanning Tree Protocol forwarding delay in seconds (default 15)</description>
               </valueHelp>
               <constraint>
@@ -59,7 +59,7 @@
             <properties>
               <help>Hello packet advertisment interval</help>
               <valueHelp>
-                <format>1-10</format>
+                <format>u32:1-10</format>
                 <description>Spanning Tree Protocol hello advertisement interval in seconds (default 2)</description>
               </valueHelp>
               <constraint>
@@ -96,7 +96,7 @@
             <properties>
               <help>Interval at which neighbor bridges are removed</help>
               <valueHelp>
-                <format>1-40</format>
+                <format>u32:1-40</format>
                 <description>Bridge maximum aging time in seconds (default 20)</description>
               </valueHelp>
               <constraint>
@@ -123,7 +123,7 @@
                     <properties>
                       <help>Specify VLAN id which should natively be present on the link</help>
                       <valueHelp>
-                        <format>1-4094</format>
+                        <format>u32:1-4094</format>
                         <description>Virtual Local Area Network (VLAN) ID</description>
                       </valueHelp>
                       <constraint>
@@ -154,7 +154,7 @@
                     <properties>
                       <help>Bridge port cost</help>
                       <valueHelp>
-                        <format>1-65535</format>
+                        <format>u32:1-65535</format>
                         <description>Path cost value for Spanning Tree Protocol</description>
                       </valueHelp>
                       <constraint>
@@ -168,7 +168,7 @@
                     <properties>
                       <help>Bridge port priority</help>
                       <valueHelp>
-                        <format>0-63</format>
+                        <format>u32:0-63</format>
                         <description>Bridge port priority</description>
                       </valueHelp>
                       <constraint>
@@ -192,7 +192,7 @@
             <properties>
               <help>Priority for this bridge</help>
               <valueHelp>
-                <format>0-65535</format>
+                <format>u32:0-65535</format>
                 <description>Bridge priority (default 32768)</description>
               </valueHelp>
               <constraint>
diff --git a/interface-definitions/interfaces-l2tpv3.xml.in b/interface-definitions/interfaces-l2tpv3.xml.in
index d3e18fe6e..1cd30b86e 100644
--- a/interface-definitions/interfaces-l2tpv3.xml.in
+++ b/interface-definitions/interfaces-l2tpv3.xml.in
@@ -22,7 +22,7 @@
             <properties>
               <help>UDP destination port for L2TPv3 tunnel (default: 5000)</help>
               <valueHelp>
-                <format>1-65535</format>
+                <format>u32:1-65535</format>
                 <description>Numeric IP port</description>
               </valueHelp>
               <constraint>
@@ -64,7 +64,7 @@
             <properties>
               <help>Peer session identifier</help>
               <valueHelp>
-                <format>1-429496729</format>
+                <format>u32:1-429496729</format>
                 <description>L2TPv3 peer session identifier</description>
               </valueHelp>
               <constraint>
@@ -76,7 +76,7 @@
             <properties>
               <help>Peer tunnel identifier</help>
               <valueHelp>
-                <format>1-429496729</format>
+                <format>u32:1-429496729</format>
                 <description>L2TPv3 peer tunnel identifier</description>
               </valueHelp>
               <constraint>
@@ -89,7 +89,7 @@
             <properties>
               <help>Session identifier</help>
               <valueHelp>
-                <format>1-429496729</format>
+                <format>u32:1-429496729</format>
                 <description>L2TPv3 session identifier</description>
               </valueHelp>
               <constraint>
@@ -101,7 +101,7 @@
             <properties>
               <help>UDP source port for L2TPv3 tunnel (default: 5000)</help>
               <valueHelp>
-                <format>1-65535</format>
+                <format>u32:1-65535</format>
                 <description>Numeric IP port</description>
               </valueHelp>
               <constraint>
@@ -114,7 +114,7 @@
             <properties>
               <help>Local tunnel identifier</help>
               <valueHelp>
-                <format>1-429496729</format>
+                <format>u32:1-429496729</format>
                 <description>L2TPv3 local tunnel identifier</description>
               </valueHelp>
               <constraint>
diff --git a/interface-definitions/interfaces-macsec.xml.in b/interface-definitions/interfaces-macsec.xml.in
index e88cb4794..4a566ef8b 100644
--- a/interface-definitions/interfaces-macsec.xml.in
+++ b/interface-definitions/interfaces-macsec.xml.in
@@ -82,7 +82,7 @@
                     <properties>
                       <help>Priority of MACsec Key Agreement protocol (MKA) actor (default: 255)</help>
                       <valueHelp>
-                        <format>0-255</format>
+                        <format>u32:0-255</format>
                         <description>MACsec Key Agreement protocol (MKA) priority</description>
                       </valueHelp>
                       <constraint>
@@ -97,11 +97,11 @@
                 <properties>
                   <help>IEEE 802.1X/MACsec replay protection window</help>
                   <valueHelp>
-                    <format>0</format>
+                    <format>u32:0</format>
                     <description>No replay window, strict check</description>
                   </valueHelp>
                   <valueHelp>
-                    <format>1-4294967295</format>
+                    <format>u32:1-4294967295</format>
                     <description>Number of packets that could be misordered</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/interfaces-openvpn.xml.in b/interface-definitions/interfaces-openvpn.xml.in
index b7727f356..bf199f472 100644
--- a/interface-definitions/interfaces-openvpn.xml.in
+++ b/interface-definitions/interfaces-openvpn.xml.in
@@ -206,7 +206,7 @@
                 <properties>
                   <help>Maximum number of keepalive packet failures (default: 60)</help>
                   <valueHelp>
-                    <format>0-1000</format>
+                    <format>u32:0-1000</format>
                     <description>Maximum number of keepalive packet failures</description>
                   </valueHelp>
                   <constraint>
@@ -219,7 +219,7 @@
                 <properties>
                   <help>Keepalive packet interval in seconds (default: 10)</help>
                   <valueHelp>
-                    <format>0-600</format>
+                    <format>u32:0-600</format>
                     <description>Keepalive packet interval (seconds)</description>
                   </valueHelp>
                   <constraint>
@@ -268,7 +268,7 @@
             <properties>
               <help>Local port number to accept connections</help>
               <valueHelp>
-                <format>1-65535</format>
+                <format>u32:1-65535</format>
                 <description>Numeric IP port</description>
               </valueHelp>
               <constraint>
@@ -378,7 +378,7 @@
             <properties>
               <help>Remote port number to connect to</help>
               <valueHelp>
-                <format>1-65535</format>
+                <format>u32:1-65535</format>
                 <description>Numeric IP port</description>
               </valueHelp>
               <constraint>
@@ -546,7 +546,7 @@
                 <properties>
                   <help>Number of maximum client connections</help>
                   <valueHelp>
-                    <format>1-4096</format>
+                    <format>u32:1-4096</format>
                     <description>Number of concurrent clients</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/interfaces-tunnel.xml.in b/interface-definitions/interfaces-tunnel.xml.in
index d0256a64a..df9b58992 100644
--- a/interface-definitions/interfaces-tunnel.xml.in
+++ b/interface-definitions/interfaces-tunnel.xml.in
@@ -171,8 +171,8 @@
                         <list>none</list>
                       </completionHelp>
                       <valueHelp>
-                        <format>0-255</format>
-                        <description>Encaplimit (default 4)</description>
+                        <format>u32:0-255</format>
+                        <description>Encaplimit (default: 4)</description>
                       </valueHelp>
                       <valueHelp>
                         <format>none</format>
@@ -191,7 +191,7 @@
                     <properties>
                       <help>Hoplimit</help>
                       <valueHelp>
-                        <format>0-255</format>
+                        <format>u32:0-255</format>
                         <description>Hoplimit (default 64)</description>
                       </valueHelp>
                       <constraint>
@@ -205,7 +205,7 @@
                     <properties>
                       <help>Traffic class (Tclass)</help>
                       <valueHelp>
-                        <format>0x0-0x0FFFFF</format>
+                        <format>0x0-0x0fffff</format>
                         <description>Traffic class, 'inherit' or hex value</description>
                       </valueHelp>
                       <constraint>
diff --git a/interface-definitions/interfaces-wireguard.xml.in b/interface-definitions/interfaces-wireguard.xml.in
index 5255ce3a2..73328c16a 100644
--- a/interface-definitions/interfaces-wireguard.xml.in
+++ b/interface-definitions/interfaces-wireguard.xml.in
@@ -118,7 +118,7 @@
                 <properties>
                   <help>Interval to send keepalive messages</help>
                   <valueHelp>
-                    <format>1-65535</format>
+                    <format>u32:1-65535</format>
                     <description>Interval in seconds</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/interfaces-wireless.xml.in b/interface-definitions/interfaces-wireless.xml.in
index c96d9b78d..048c7b475 100644
--- a/interface-definitions/interfaces-wireless.xml.in
+++ b/interface-definitions/interfaces-wireless.xml.in
@@ -206,7 +206,7 @@
                     <properties>
                       <help>Number of antennas on this card</help>
                       <valueHelp>
-                        <format>1-8</format>
+                        <format>u32:1-8</format>
                         <description>Number of antennas for this card</description>
                       </valueHelp>
                       <constraint>
diff --git a/interface-definitions/lldp.xml.in b/interface-definitions/lldp.xml.in
index e14abae14..32ef0ad14 100644
--- a/interface-definitions/lldp.xml.in
+++ b/interface-definitions/lldp.xml.in
@@ -105,7 +105,7 @@
                     <properties>
                       <help>ECS ELIN (Emergency location identifier number)</help>
                       <valueHelp>
-                        <format>0-9999999999</format>
+                        <format>u32:0-9999999999</format>
                         <description>Emergency Call Service ELIN number (between 10-25 numbers)</description>
                       </valueHelp>
                       <constraint>
diff --git a/interface-definitions/protocols-igmp.xml.in b/interface-definitions/protocols-igmp.xml.in
index a9b11e1a3..e10340512 100644
--- a/interface-definitions/protocols-igmp.xml.in
+++ b/interface-definitions/protocols-igmp.xml.in
@@ -46,9 +46,16 @@
               <leafNode name="version">
                 <properties>
                   <help>IGMP version</help>
+                  <completionHelp>
+                    <list>2 3</list>
+                  </completionHelp>
                   <valueHelp>
-                    <format>2-3</format>
-                    <description>IGMP version</description>
+                    <format>2</format>
+                    <description>IGMP version 2</description>
+                  </valueHelp>
+                 <valueHelp>
+                    <format>3</format>
+                    <description>IGMP version 3</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 2-3"/>
@@ -59,7 +66,7 @@
                 <properties>
                   <help>IGMP host query interval</help>
                   <valueHelp>
-                    <format>1-1800</format>
+                    <format>u32:1-1800</format>
                     <description>Query interval in seconds</description>
                   </valueHelp>
                   <constraint>
@@ -71,7 +78,7 @@
                 <properties>
                   <help>IGMP max query response time</help>
                   <valueHelp>
-                    <format>10-250</format>
+                    <format>u32:10-250</format>
                     <description>Query response value in deci-seconds</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/protocols-multicast.xml.in b/interface-definitions/protocols-multicast.xml.in
index a06f2b287..1b1382352 100644
--- a/interface-definitions/protocols-multicast.xml.in
+++ b/interface-definitions/protocols-multicast.xml.in
@@ -38,7 +38,7 @@
                         <properties>
                           <help>Distance value for this route</help>
                           <valueHelp>
-                            <format>1-255</format>
+                            <format>u32:1-255</format>
                             <description>Distance for this route</description>
                           </valueHelp>
                           <constraint>
@@ -74,7 +74,7 @@
                         <properties>
                           <help>Distance value for this route</help>
                           <valueHelp>
-                            <format>1-255</format>
+                            <format>u32:1-255</format>
                             <description>Distance for this route</description>
                           </valueHelp>
                           <constraint>
diff --git a/interface-definitions/protocols-pim.xml.in b/interface-definitions/protocols-pim.xml.in
index 6152045a7..bb5cc797b 100644
--- a/interface-definitions/protocols-pim.xml.in
+++ b/interface-definitions/protocols-pim.xml.in
@@ -21,7 +21,7 @@
                 <properties>
                   <help>Designated Router Election Priority</help>
                   <valueHelp>
-                    <format>1-4294967295</format>
+                    <format>u32:1-4294967295</format>
                     <description>Value of the new DR Priority</description>
                   </valueHelp>
                   <constraint>
@@ -33,7 +33,7 @@
                 <properties>
                   <help>Hello Interval</help>
                   <valueHelp>
-                    <format>1-180</format>
+                    <format>u32:1-180</format>
                     <description>Hello Interval in seconds</description>
                   </valueHelp>
                   <constraint>
@@ -79,7 +79,7 @@
                 <properties>
                   <help>Keep alive Timer</help>
                   <valueHelp>
-                    <format>31-60000</format>
+                    <format>u32:31-60000</format>
                     <description>Keep alive Timer in seconds</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/service_pppoe-server.xml.in b/interface-definitions/service_pppoe-server.xml.in
index 037a18e1d..955c104f7 100644
--- a/interface-definitions/service_pppoe-server.xml.in
+++ b/interface-definitions/service_pppoe-server.xml.in
@@ -267,7 +267,7 @@
             <properties>
               <help>PADO delays</help>
               <valueHelp>
-                <format>1-999999</format>
+                <format>u32:1-999999</format>
                 <description>Number in ms</description>
               </valueHelp>
               <constraint>
@@ -280,7 +280,7 @@
                 <properties>
                   <help>Number of sessions</help>
                   <valueHelp>
-                    <format>1-999999</format>
+                    <format>u32:1-999999</format>
                     <description>Number of sessions</description>
                   </valueHelp>
                   <constraint>
diff --git a/interface-definitions/service_router-advert.xml.in b/interface-definitions/service_router-advert.xml.in
index 750ae314c..e18b27f1b 100644
--- a/interface-definitions/service_router-advert.xml.in
+++ b/interface-definitions/service_router-advert.xml.in
@@ -20,12 +20,12 @@
                 <properties>
                   <help>Set Hop Count field of the IP header for outgoing packets (default: 64)</help>
                   <valueHelp>
-                    <format>1-255</format>
-                    <description>Value should represent current diameter of the Internet</description>
+                    <format>u32:0</format>
+                    <description>Unspecified (by this router)</description>
                   </valueHelp>
                   <valueHelp>
-                    <format>0</format>
-                    <description>Unspecified (by this router)</description>
+                    <format>u32:1-255</format>
+                    <description>Value should represent current diameter of the Internet</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 0-255"/>
@@ -38,7 +38,7 @@
                 <properties>
                   <help>Lifetime associated with the default router in units of seconds</help>
                   <valueHelp>
-                    <format>4-9000</format>
+                    <format>u32:4-9000</format>
                     <description>Router Lifetime in seconds</description>
                   </valueHelp>
                   <valueHelp>
@@ -86,7 +86,7 @@
                 <properties>
                   <help>Link MTU value placed in RAs, exluded in RAs if unset</help>
                   <valueHelp>
-                    <format>1280-9000</format>
+                    <format>u32:1280-9000</format>
                     <description>Link MTU value in RAs</description>
                   </valueHelp>
                   <constraint>
@@ -110,7 +110,7 @@
                     <properties>
                       <help>Maximum interval between unsolicited multicast RAs (default: 600)</help>
                       <valueHelp>
-                        <format>4-1800</format>
+                        <format>u32:4-1800</format>
                         <description>Maximum interval in seconds</description>
                       </valueHelp>
                       <constraint>
@@ -124,7 +124,7 @@
                     <properties>
                       <help>Minimum interval between unsolicited multicast RAs</help>
                       <valueHelp>
-                        <format>3-1350</format>
+                        <format>u32:3-1350</format>
                         <description>Minimum interval in seconds</description>
                       </valueHelp>
                       <constraint>
@@ -173,7 +173,7 @@
                         <list>infinity</list>
                       </completionHelp>
                       <valueHelp>
-                        <format>1-4294967295</format>
+                        <format>u32:1-4294967295</format>
                         <description>Time in seconds that the route will remain valid</description>
                       </valueHelp>
                       <valueHelp>
@@ -272,7 +272,7 @@
                         <list>infinity</list>
                       </completionHelp>
                       <valueHelp>
-                        <format>1-4294967295</format>
+                        <format>u32:1-4294967295</format>
                         <description>Time in seconds that the prefix will remain valid</description>
                       </valueHelp>
                       <valueHelp>
@@ -292,12 +292,12 @@
                 <properties>
                   <help>Time, in milliseconds, that a node assumes a neighbor is reachable after having received a reachability confirmation</help>
                   <valueHelp>
-                    <format>1-3600000</format>
-                    <description>Reachable Time value in RAs (in milliseconds)</description>
+                    <format>u32:0</format>
+                    <description>Reachable Time unspecified by this router</description>
                   </valueHelp>
                   <valueHelp>
-                    <format>0</format>
-                    <description>Reachable Time unspecified by this router</description>
+                    <format>u32:1-3600000</format>
+                    <description>Reachable Time value in RAs (in milliseconds)</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 0-0 --range 1-3600000"/>
@@ -310,12 +310,12 @@
                 <properties>
                   <help>Time in milliseconds between retransmitted Neighbor Solicitation messages</help>
                   <valueHelp>
-                    <format>1-4294967295</format>
-                    <description>Minimum interval in milliseconds</description>
+                    <format>u32:0</format>
+                    <description>Time, in milliseconds, between retransmitted Neighbor Solicitation messages</description>
                   </valueHelp>
                   <valueHelp>
-                    <format>0</format>
-                    <description>Time, in milliseconds, between retransmitted Neighbor Solicitation messages</description>
+                    <format>u32:1-4294967295</format>
+                    <description>Minimum interval in milliseconds</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 0-0 --range 1-4294967295"/>
diff --git a/interface-definitions/ssh.xml.in b/interface-definitions/ssh.xml.in
index c447f144d..e3b9d16e1 100644
--- a/interface-definitions/ssh.xml.in
+++ b/interface-definitions/ssh.xml.in
@@ -138,7 +138,7 @@
             <properties>
               <help>Enable transmission of keepalives from server to client</help>
               <valueHelp>
-                <format>1-65535</format>
+                <format>u32:1-65535</format>
                 <description>Time interval in seconds for keepalive message</description>
               </valueHelp>
               <constraint>
diff --git a/interface-definitions/vpn_l2tp.xml.in b/interface-definitions/vpn_l2tp.xml.in
index 5bdebcb05..787298284 100644
--- a/interface-definitions/vpn_l2tp.xml.in
+++ b/interface-definitions/vpn_l2tp.xml.in
@@ -220,9 +220,9 @@
                           #include <include/accel-ppp/radius-additions-disable-accounting.xml.i>
                           <leafNode name="fail-time">
                             <properties>
-                              <help>Mark server unavailable for &lt;n&gt; seconds on failure</help>
+                              <help>Mark server unavailable for N seconds on failure</help>
                               <valueHelp>
-                                <format>0-600</format>
+                                <format>u32:0-600</format>
                                 <description>Fail time penalty</description>
                               </valueHelp>
                               <constraint>
diff --git a/interface-definitions/vrf.xml.in b/interface-definitions/vrf.xml.in
index 8cddc3012..306b15d60 100644
--- a/interface-definitions/vrf.xml.in
+++ b/interface-definitions/vrf.xml.in
@@ -30,13 +30,13 @@
             <properties>
               <help>Routing table associated with this instance</help>
               <valueHelp>
-                <format>100-2147483647</format>
+                <format>u32:100-65535</format>
                 <description>Routing table ID</description>
               </valueHelp>
               <constraint>
-                <validator name="numeric" argument="--range 100-2147483647"/>
+                <validator name="numeric" argument="--range 100-65535"/>
               </constraint>
-              <constraintErrorMessage>VRF routing table must be in range from 100 to 2147483647</constraintErrorMessage>
+              <constraintErrorMessage>VRF routing table must be in range from 100 to 65535</constraintErrorMessage>
             </properties>
           </leafNode>
           #include <include/interface/description.xml.i>
-- 
cgit v1.2.3