summaryrefslogtreecommitdiffhomepage
path: root/libs/uvl/root/lib/uci
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2008-08-30 15:15:42 +0000
committerJo-Philipp Wich <jow@openwrt.org>2008-08-30 15:15:42 +0000
commit1b36a57d3e6cda4d3fc6b02309e1c0077bb0c8f8 (patch)
treee9b096200d33e7bc825fc1c527cbadb26fd5661d /libs/uvl/root/lib/uci
parent63706a9f4391a56f7054c496f519e8ec5bebbe1f (diff)
* luci/libs: uvl: added qos and network schemes, fixes in uvl error handling
Diffstat (limited to 'libs/uvl/root/lib/uci')
-rw-r--r--libs/uvl/root/lib/uci/schema/default/network77
-rw-r--r--libs/uvl/root/lib/uci/schema/default/qos206
2 files changed, 283 insertions, 0 deletions
diff --git a/libs/uvl/root/lib/uci/schema/default/network b/libs/uvl/root/lib/uci/schema/default/network
new file mode 100644
index 0000000000..85da7e301a
--- /dev/null
+++ b/libs/uvl/root/lib/uci/schema/default/network
@@ -0,0 +1,77 @@
+package network
+
+config section
+ option name 'interface'
+ option title 'Network interface definition'
+ option package 'network'
+ list depends 'proto=static, ipaddr, netmask'
+ list depends 'proto=pppoe, username, password'
+ list depends 'proto=pptp, username, password, server'
+ list depends 'proto=dhcp'
+ option named true
+ option required true
+
+config variable
+ option name 'ifname'
+ option title 'Physical interface name'
+ option section 'network.interface'
+ option required true
+
+config variable
+ option name 'ipaddr'
+ option title 'IPv4 host address'
+ option section 'network.interface'
+ option datatype 'ip4addr'
+
+config variable
+ option name 'netmask'
+ option title 'IPv4 network mask'
+ option section 'network.interface'
+ option datatype 'ip4addr'
+
+config variable
+ option name 'proto'
+ option title 'Option proto'
+ option section 'network.interface'
+ option type 'enum'
+ option required true
+
+config enum
+ option variable 'network.interface.proto'
+ option value 'dhcp'
+ option title 'Retrieve IP address via DHCP'
+
+config enum
+ option variable 'network.interface.proto'
+ option value 'pptp'
+ option title 'Interface is a PPTP tunnel endpoint'
+
+config enum
+ option variable 'network.interface.proto'
+ option value 'static'
+ option title 'Interface has static network configuration'
+
+config enum
+ option variable 'network.interface.proto'
+ option value 'pppoe'
+ option title 'Retrieve IP address via PPPoE'
+
+config variable
+ option name 'type'
+ option title 'Option type'
+ option section 'network.interface'
+ option type 'enum'
+
+config enum
+ option variable 'network.interface.type'
+ option value 'bridge'
+ option title 'This is a bridge interface'
+
+
+config section
+ option name 'switch'
+ option title 'Section switch'
+ option package 'network'
+ option named true
+ option dynamic true
+ option required true
diff --git a/libs/uvl/root/lib/uci/schema/default/qos b/libs/uvl/root/lib/uci/schema/default/qos
new file mode 100644
index 0000000000..ea8fa97bf6
--- /dev/null
+++ b/libs/uvl/root/lib/uci/schema/default/qos
@@ -0,0 +1,206 @@
+package qos
+
+config section
+ option name 'interface'
+ option title 'QoS interface section'
+ option package 'qos'
+ option named true
+ option required true
+
+config variable
+ option name 'enabled'
+ option title 'Enable QoS on this interface'
+ option section 'qos.interface'
+ option datatype 'boolean'
+
+config variable
+ option name 'overhead'
+ option title 'Calculate overhead bandwidth'
+ option section 'qos.interface'
+ option datatype 'boolean'
+
+config variable
+ option name 'classgroup'
+ option title 'QoS classification'
+ option section 'qos.interface'
+ option valueof 'qos.classgroup'
+
+config variable
+ option name 'download'
+ option title 'Maximum download speed in kBits/s'
+ option section 'qos.interface'
+ option datatype 'integer'
+
+config variable
+ option name 'upload'
+ option title 'Maximum upload speed in kBits/s'
+ option section 'qos.interface'
+ option datatype 'integer'
+
+
+config section
+ option name 'class'
+ option title 'QoS traffic class definition'
+ option package 'qos'
+ option named true
+ option required true
+
+config variable
+ option name 'avgrate'
+ option title 'Average rate'
+ option section 'qos.class'
+ option datatype 'integer'
+
+config variable
+ option name 'maxsize'
+ option title 'Maximum size'
+ option section 'qos.class'
+ option datatype 'integer'
+
+config variable
+ option name 'packetdelay'
+ option title 'Packet delay'
+ option section 'qos.class'
+ option datatype 'integer'
+
+config variable
+ option name 'packetsize'
+ option title 'Packet size'
+ option section 'qos.class'
+ option datatype 'integer'
+
+config variable
+ option name 'priority'
+ option title 'QoS priority'
+ option section 'qos.class'
+ option datatype 'integer'
+
+
+config section
+ option name 'classgroup'
+ option title 'QoS classification group'
+ option package 'qos'
+ option named true
+
+config variable
+ option name 'classes'
+ option title 'Defined QoS classes in group'
+ option section 'qos.classgroup'
+
+config variable
+ option name 'default'
+ option title 'Default QoS class in group'
+ option section 'qos.classgroup'
+ option valueof 'qos.class'
+
+
+config section
+ option name 'default'
+ option title 'QoS default classification'
+ option package 'qos'
+ list depends 'target, pktsize'
+ list depends 'target, portrange'
+ list depends 'target, proto'
+
+config variable
+ option name 'pktsize'
+ option title 'Match by packet size'
+ option section 'qos.default'
+ option datatype 'integer'
+
+config variable
+ option name 'portrange'
+ option title 'Match by port range'
+ option section 'qos.default'
+
+config variable
+ option name 'proto'
+ option title 'Match by layer 3 protocol'
+ option section 'qos.default'
+
+config variable
+ option name 'target'
+ option title 'Option target'
+ option section 'qos.default'
+ option valueof 'qos.class'
+
+
+config section
+ option name 'classify'
+ option title 'QoS classification rule'
+ option package 'qos'
+ list depends 'target, ipp2p'
+ list depends 'target, layer7'
+ list depends 'target, ports'
+ list depends 'target, proto'
+ list depends 'target, tcpflags'
+
+config variable
+ option name 'ipp2p'
+ option title 'Match by ipp2p'
+ option section 'qos.classify'
+
+config variable
+ option name 'layer7'
+ option title 'Match by layer 7 protocol'
+ option section 'qos.classify'
+
+config variable
+ option name 'ports'
+ option title 'Match by ports'
+ option section 'qos.classify'
+
+config variable
+ option name 'proto'
+ option title 'Match by layer 3 protocol'
+ option section 'qos.classify'
+
+config variable
+ option name 'tcpflags'
+ option title 'Match by TCP flags'
+ option section 'qos.classify'
+
+config variable
+ option name 'target'
+ option title 'QoS target class'
+ option section 'qos.classify'
+ option valueof 'qos.class'
+
+
+config section
+ option name 'reclassify'
+ option title 'QoS reclassification rule'
+ option package 'qos'
+ list depends 'target, ipp2p'
+ list depends 'target, layer7'
+ list depends 'target, ports'
+ list depends 'target, proto'
+ list depends 'target, pktsize'
+ list depends 'target, tcpflags'
+
+config variable
+ option name 'mark'
+ option title 'Match by classification mark'
+ option section 'qos.reclassify'
+
+config variable
+ option name 'pktsize'
+ option title 'Match by packet size'
+ option section 'qos.reclassify'
+ option datatype 'integer'
+
+config variable
+ option name 'proto'
+ option title 'Match by layer 3 protocol'
+ option section 'qos.reclassify'
+
+config variable
+ option name 'tcpflags'
+ option title 'Match by TCP flags'
+ option section 'qos.reclassify'
+
+config variable
+ option name 'target'
+ option title 'QoS classification target'
+ option section 'qos.reclassify'
+ option valueof 'qos.class'