Reworked UVL schemes
authorSteven Barth <steven@midlink.org>
Thu, 11 Sep 2008 21:45:23 +0000 (21:45 +0000)
committerSteven Barth <steven@midlink.org>
Thu, 11 Sep 2008 21:45:23 +0000 (21:45 +0000)
14 files changed:
libs/uvl/root/lib/uci/schema/default/ddns
libs/uvl/root/lib/uci/schema/default/dhcp [new file with mode: 0644]
libs/uvl/root/lib/uci/schema/default/dropbear
libs/uvl/root/lib/uci/schema/default/firewall
libs/uvl/root/lib/uci/schema/default/fstab
libs/uvl/root/lib/uci/schema/default/httpd
libs/uvl/root/lib/uci/schema/default/network
libs/uvl/root/lib/uci/schema/default/ntpclient [new file with mode: 0644]
libs/uvl/root/lib/uci/schema/default/qos
libs/uvl/root/lib/uci/schema/default/samba [new file with mode: 0644]
libs/uvl/root/lib/uci/schema/default/system
libs/uvl/root/lib/uci/schema/default/upnpd
libs/uvl/root/lib/uci/schema/default/uvc-streamer [new file with mode: 0644]
libs/uvl/root/lib/uci/schema/default/wireless [new file with mode: 0644]

index 2c7060b..f947aff 100644 (file)
@@ -1,5 +1,8 @@
 package ddns
 
 package ddns
 
+config package
+       option title 'Dynamic DNS configuration'
+
 config section
        option name     'service'
        option title    'DynDNS service entry'
 config section
        option name     'service'
        option title    'DynDNS service entry'
diff --git a/libs/uvl/root/lib/uci/schema/default/dhcp b/libs/uvl/root/lib/uci/schema/default/dhcp
new file mode 100644 (file)
index 0000000..e6ac8f0
--- /dev/null
@@ -0,0 +1,225 @@
+package dhcp
+
+config package
+       option title 'Dnsmasq DHCPd configuration'
+
+config section
+       option name 'dnsmasq'
+       option package 'dhcp'
+       option title 'General Settings'
+       option unique true
+       option required true
+       option dynamic true
+
+config variable
+       option name 'domainneeded'
+       option section 'dhcp.dnsmasq'
+       option title 'Domain required'
+       option description "Don't forward DNS-Requests without DNS-Name"
+       option datatype boolean
+
+config variable
+       option name 'authoritative'
+       option section 'dhcp.dnsmasq'
+       option title 'Authoritative'
+       option description 'This is the only DHCP in the local network'
+       option datatype boolean
+
+config variable
+       option name 'boguspriv'
+       option section 'dhcp.dnsmasq'
+       option title 'Filter private'
+       option description "Don't forward reverse lookups for local networks"
+       option datatype boolean
+
+config variable
+       option name 'filterwin2k'
+       option section 'dhcp.dnsmasq'
+       option title 'Filter useless'
+       option description 'Filter useless DNS-queries of Windows-systems'
+       option datatype boolean
+
+config variable
+       option name 'localise_queries'
+       option section 'dhcp.dnsmasq'
+       option title 'Localise queries'
+       option description 'Localises the hostname depending on its subnet'
+       option datatype boolean
+
+config variable
+       option name 'local'
+       option section 'dhcp.dnsmasq'
+       option title 'Local Server'
+
+config variable
+       option name 'domain'
+       option section 'dhcp.dnsmasq'
+       option title 'Local Domain'
+
+config variable
+       option name 'expandhosts'
+       option section 'dhcp.dnsmasq'
+       option title 'Expand Hosts'
+       option description 'adds domain names to hostentries in the resolv file'
+       option datatype boolean
+
+config variable
+       option name 'nonegcache'
+       option section 'dhcp.dnsmasq'
+       option title "don't cache unknown"
+       option description 'prevents caching of negative DNS-replies'
+       option datatype boolean
+
+config variable
+       option name 'readethers'
+       option section 'dhcp.dnsmasq'
+       option title 'Use /etc/ethers'
+       option description 'Read /etc/ethers to configure the DHCP-Server'
+       option datatype boolean
+
+config variable
+       option name 'leasefile'
+       option section 'dhcp.dnsmasq'
+       option title 'Leasefile'
+       option description 'file where given DHCP-leases will be stored'
+       option datatype file
+
+config variable
+       option name 'resolvfile'
+       option section 'dhcp.dnsmasq'
+       option title 'Resolvfile'
+       option description 'local DNS file'
+       option datatype file
+
+config variable
+       option name 'nohosts'
+       option section 'dhcp.dnsmasq'
+       option title 'Ignore /etc/hosts '
+       option datatype boolean
+
+config variable
+       option name 'strictorder'
+       option section 'dhcp.dnsmasq'
+       option title 'Strict order'
+       option description 'DNS-Server will be queried in the order of the resolvfile'
+       option datatype boolean
+
+config variable
+       option name 'logqueries'
+       option section 'dhcp.dnsmasq'
+       option title 'Log queries'
+       option datatype boolean
+
+config variable
+       option name 'noresolv'
+       option section 'dhcp.dnsmasq'
+       option title 'Ignore resolve file'
+       option datatype boolean
+
+config variable
+       option name 'dnsforwardmax'
+       option section 'dhcp.dnsmasq'
+       option title 'concurrent queries' 
+       option datatype uint
+
+config variable
+       option name 'port'
+       option section 'dhcp.dnsmasq'
+       option title 'DNS-Port'
+       option datatype port
+
+config variable
+       option name 'ednspacket_max'
+       option section 'dhcp.dnsmasq'
+       option title 'ednspacket_max'
+       option datatype uint
+
+config variable
+       option name 'dhcpleasemax'
+       option section 'dhcp.dnsmasq'
+       option title 'max. DHCP -Leases'
+       option datatype uint
+
+config variable
+       option name 'addnhosts'
+       option section 'dhcp.dnsmasq'
+       option title 'additional hostfile'
+       option datatype file
+
+config variable
+       option name 'queryport'
+       option section 'dhcp.dnsmasq'
+       option title 'query port'
+       option datatype port
+
+
+config section
+       option name 'dhcp'
+       option package 'dhcp'
+       option title 'DHCP interface configuration'
+       option dynamic true
+
+config variable
+       option name 'interface'
+       option section 'dhcp.dhcp'
+       option title 'Interface'
+       option required true
+       option type reference
+       list   valueof network.interface
+       list   valueof network.alias
+
+config variable
+       option name 'start'
+       option section 'dhcp.dhcp'
+       option title 'Start'
+       option description 'first address (last octet)'
+       option datatype uint
+
+config variable
+       option name 'limit'
+       option section 'dhcp.dhcp'
+       option title 'Limit'
+       option description 'number of leased addresses -1'
+       option datatype uint
+
+config variable
+       option name 'leasetime'
+       option section 'dhcp.dhcp'
+       option title 'Leasetime'
+
+config variable
+       option name 'dynamicdhcp'
+       option section 'dhcp.dhcp'
+       option title 'Dynamic DHCP '
+       option datatype boolean
+
+config variable
+       option name 'name'
+       option section 'dhcp.dhcp'
+       option title 'Name'
+
+config variable
+       option name 'ignore'
+       option section 'dhcp.dhcp'
+       option title 'Ignore interface'
+       option description 'disable DHCP for this interface'
+       option datatype boolean
+
+config variable
+       option name 'netmask'
+       option section 'dhcp.dhcp'
+       option title 'IPv4-Netmask'
+       option datatype ip4addr
+
+config variable
+       option name 'force'
+       option section 'dhcp.dhcp'
+       option title 'Force'
+       option datatype boolean
+
+config variable
+       option name 'dhcp_option'
+       option section 'dhcp.dhcp'
+       option title 'DHCP-Options'
+       option description 'See "dnsmasq --help dhcp" for a list of available options.'
+       option type list
index 66e3c40..ba490a7 100644 (file)
@@ -1,5 +1,8 @@
 package dropbear
 
 package dropbear
 
+config package
+       option title    'Dropbear SSHd configuration'
+
 config section
        option name     'dropbear'
        option title    'General SSH daemon settings'
 config section
        option name     'dropbear'
        option title    'General SSH daemon settings'
index 0f4bb26..3c2de46 100644 (file)
@@ -1,5 +1,8 @@
 package firewall
 
 package firewall
 
+config package
+       option title 'Firewall configuration'
+
 config section
        option name     'zone'
        option title    'Firewall zones'
 config section
        option name     'zone'
        option title    'Firewall zones'
@@ -7,13 +10,13 @@ config section
 
 config variable
        option name     'name'
 
 config variable
        option name     'name'
-       option title    'Name of this firewall zone'
+       option title    'Name'
        option section  'firewall.zone'
        option required true
 
 config variable
        option name     'network'
        option section  'firewall.zone'
        option required true
 
 config variable
        option name     'network'
-       option title    'Associated network of this firewall zone'
+       option title    'Networks belonging to this zone'
        option section  'firewall.zone'
        option valueof  'network.interface'
        option multival true
        option section  'firewall.zone'
        option valueof  'network.interface'
        option multival true
@@ -79,7 +82,7 @@ config variable
 
 config section
        option name     'forwarding'
 
 config section
        option name     'forwarding'
-       option title    'Firewall traffic forwarding rules'
+       option title    'Forwarding rules'
        option package  'firewall'
 
 config variable
        option package  'firewall'
 
 config variable
@@ -100,7 +103,7 @@ config variable
 
 config section
        option name     'rule'
 
 config section
        option name     'rule'
-       option title    'Custom rule specification'
+       option title    'Custom rules'
        option package  'firewall'
        list   depends  'target, src'
        list   depends  'target, dest'
        option package  'firewall'
        list   depends  'target, src'
        list   depends  'target, dest'
@@ -169,7 +172,7 @@ config variable
 
 config section
        option name     'redirect'
 
 config section
        option name     'redirect'
-       option title    'Traffic redirection rule definition'
+       option title    'Redirection rules'
        option package  'firewall'
 
 config variable
        option package  'firewall'
 
 config variable
index 1ef08f3..927dcc7 100644 (file)
@@ -1,5 +1,8 @@
 package fstab
 
 package fstab
 
+config package
+       option title 'Filesystem configuration'
+
 config section
        option name     'mount'
        option title    'Filesystem entry'
 config section
        option name     'mount'
        option title    'Filesystem entry'
index 5f8d979..7d829c5 100644 (file)
@@ -1,5 +1,8 @@
 package httpd
 
 package httpd
 
+config package
+       option title 'Busybox HTTPd configuration'
+
 config section
        option name     'httpd'
        option title    'General httpd settings'
 config section
        option name     'httpd'
        option title    'General httpd settings'
@@ -9,7 +12,7 @@ config section
 
 config variable
        option name     'home'
 
 config variable
        option name     'home'
-       option title    'Docroot directory'
+       option title    'Document root'
        option section  'httpd.httpd'
        option datatype 'directory'
        option required true
        option section  'httpd.httpd'
        option datatype 'directory'
        option required true
@@ -20,3 +23,16 @@ config variable
        option section  'httpd.httpd'
        option datatype 'integer'
        option required true
        option section  'httpd.httpd'
        option datatype 'integer'
        option required true
+
+config variable
+       option name     'c_file'
+       option title    'Configuration file'
+       option section  'httpd.httpd'
+       option datatype 'file'
+
+config variable
+       option name     'realm'
+       option title    'Authentication Realm'
+       option description 'Realm shown on login prompt'
+       option section  'httpd.httpd'
+
index d431c40..726fdb7 100644 (file)
@@ -1,11 +1,11 @@
 package network
 
 config package
 package network
 
 config package
-       option title    'Network Configuration'
+       option title    'Network configuration'
 
 config section
        option name     'interface'
 
 config section
        option name     'interface'
-       option title    'Network interface definition'
+       option title    'Network interface'
        option package  'network'
        list   depends  'proto=static, ipaddr, netmask'
        list   depends  'proto=static, ip6addr'
        option package  'network'
        list   depends  'proto=static, ipaddr, netmask'
        list   depends  'proto=static, ip6addr'
@@ -18,7 +18,7 @@ config section
 
 config variable
        option name     'ifname'
 
 config variable
        option name     'ifname'
-       option title    'Physical interface name'
+       option title    'Physical interface'
        option section  'network.interface'
        option required true
 
        option section  'network.interface'
        option required true
 
@@ -75,40 +75,52 @@ config variable
        option title    'DNS server (IPv4 or IPv6)'
        option section  'network.interface'
        option datatype 'ipaddr'
        option title    'DNS server (IPv4 or IPv6)'
        option section  'network.interface'
        option datatype 'ipaddr'
+       option multival true
 
 config variable
        option name     'keepalive'
 
 config variable
        option name     'keepalive'
-       option title    'Number of connection failures before reconnect (PPTP)'
+       option title    'keep-alive'
+       option descriptions     'Number of connection failures before reconnect'
        option section  'network.interface'
        option datatype 'uint'
        option section  'network.interface'
        option datatype 'uint'
+       list depends    proto=pppoe
+       list depends    proto=pptp
 
 config variable
        option name     'demand'
 
 config variable
        option name     'demand'
-       option title    'Number of seconds to wait before closing the connection due to inactivity (PPTP)'
+       option title    'Dial on-demand'
+       option description      'Number of seconds to wait before closing the connection due to inactivity'
        option section  'network.interface'
        option datatype 'uint'
        option section  'network.interface'
        option datatype 'uint'
+       list depends    proto=pppoe
+       list depends    proto=pptp
 
 config variable
        option name     'username'
 
 config variable
        option name     'username'
-       option title    'PPTP username'
+       option title    'Username'
        option section  'network.interface'
        option datatype 'string'
        option section  'network.interface'
        option datatype 'string'
+       list depends    proto=pppoe
+       list depends    proto=pptp
 
 config variable
        option name     'password'
 
 config variable
        option name     'password'
-       option title    'PPTP password'
+       option title    'Password'
        option section  'network.interface'
        option datatype 'string'
        option section  'network.interface'
        option datatype 'string'
+       list depends    proto=pppoe
+       list depends    proto=pptp
 
 config variable
        option name     'server'
        option title    'PPTP server'
        option section  'network.interface'
        option datatype 'ipaddr'
 
 config variable
        option name     'server'
        option title    'PPTP server'
        option section  'network.interface'
        option datatype 'ipaddr'
+       list depends    proto=pptp
 
 config variable
        option name     'proto'
 
 config variable
        option name     'proto'
-       option title    'Option proto'
+       option title    'Protocol'
        option section  'network.interface'
        option type             'enum'
        option required true
        option section  'network.interface'
        option type             'enum'
        option required true
@@ -162,7 +174,7 @@ config section
 
 config variable
        option name     'interface'
 
 config variable
        option name     'interface'
-       option title    'Parent interface name'
+       option title    'Parent interface'
        option section  'network.alias'
        option valueof  'network.interface'
        option required true
        option section  'network.alias'
        option valueof  'network.interface'
        option required true
@@ -211,7 +223,7 @@ config variable
 
 config variable
        option name     'proto'
 
 config variable
        option name     'proto'
-       option title    'Alias interface protocol'
+       option title    'Protocol'
        option section  'network.alias'
        option type             'enum'
        option required true
        option section  'network.alias'
        option type             'enum'
        option required true
@@ -230,27 +242,27 @@ config section
 
 config variable
        option name     'interface'
 
 config variable
        option name     'interface'
-       option title    'Interface for the route'
+       option title    'Interface'
        option section  'network.route'
        option valueof  'network.interface'
        option required true
 
 config variable
        option name     'target'
        option section  'network.route'
        option valueof  'network.interface'
        option required true
 
 config variable
        option name     'target'
-       option title    'Target IPv4 host or net address'
+       option title    'Target IPv4 host or network'
        option section  'network.route'
        option datatype 'ip4addr'
        option required true
 
 config variable
        option name     'netmask'
        option section  'network.route'
        option datatype 'ip4addr'
        option required true
 
 config variable
        option name     'netmask'
-       option title    'Target IPv4 netmask (for subnet routes)'
+       option title    'Target IPv4 netmask'
        option section  'network.route'
        option datatype 'ip4addr'
 
 config variable
        option name     'gateway'
        option section  'network.route'
        option datatype 'ip4addr'
 
 config variable
        option name     'gateway'
-       option title    'IPv4 gateway address'
+       option title    'IPv4 gateway'
        option section  'network.route'
        option datatype 'ip4addr'
        option required true
        option section  'network.route'
        option datatype 'ip4addr'
        option required true
diff --git a/libs/uvl/root/lib/uci/schema/default/ntpclient b/libs/uvl/root/lib/uci/schema/default/ntpclient
new file mode 100644 (file)
index 0000000..0b7b5a5
--- /dev/null
@@ -0,0 +1,53 @@
+package ntpclient
+
+config package
+       option title 'Time Synchronisation'
+
+config section
+       option name 'ntpclient'
+       option package 'ntpclient'
+       option title 'General'
+       option unique true
+       option required true
+
+config variable
+       option name 'interval'
+       option section 'ntpclient.ntpclient'
+       option title 'Update Interval (in s)'
+       option datatype uint
+
+config variable
+       option name 'count'
+       option section 'ntpclient.ntpclient'
+       option title 'Count of Time Measurements'
+       option datatype uint
+
+config section
+       option name 'ntpdrift'
+       option package 'ntpclient'
+       option title 'Clock Adjustment'
+       option unique true
+
+config variable
+       option name 'freq'
+       option section 'ntpclient.ntpdrift'
+       option title 'Offset Frequency'
+       option datatype float
+
+config section
+       option name 'ntpserver'
+       option package 'ntpclient'
+       option title 'Time Server'
+
+config variable
+       option name 'hostname'
+       option section 'ntpclient.ntpserver'
+       option title 'Hostname'
+       option required true
+       option datatype host
+
+config variable
+       option name 'port'
+       option section 'ntpclient.ntpserver'
+       option title 'Port'
+       option datatype port
index 190ea54..24f8e0d 100644 (file)
@@ -1,5 +1,8 @@
 package qos
 
 package qos
 
+config package
+       option title 'Network quality of service'
+
 config section
        option name     'interface'
        option title    'QoS interface section'
 config section
        option name     'interface'
        option title    'QoS interface section'
diff --git a/libs/uvl/root/lib/uci/schema/default/samba b/libs/uvl/root/lib/uci/schema/default/samba
new file mode 100644 (file)
index 0000000..d4c7d8c
--- /dev/null
@@ -0,0 +1,76 @@
+package samba
+
+config package
+       option title 'Samba CIFS/SMB Daemon'
+
+config section
+       option name 'samba'
+       option package 'samba'
+       option title 'General Settings'
+       option unique true
+       option required true
+
+config variable
+       option name 'name'
+       option section 'samba.samba'
+       option title 'Hostname'
+       option datatype host
+       option required true
+
+config variable
+       option name 'description'
+       option section 'samba.samba'
+       option title 'Description'
+
+config variable
+       option name 'workgroup'
+       option section 'samba.samba'
+       option title 'Workgroup'
+       option required true
+
+config variable
+       option name 'homes'
+       option section 'samba.samba'
+       option title 'Share home-directories'
+       option description 'System users can reach their home directories via network shares.'
+       option datatype boolean
+
+config section
+       option name 'sambashare'
+       option package 'samba'
+       option title 'Shared Directories'
+
+config variable
+       option name 'name'
+       option section 'samba.sambashare'
+       option title 'Name'
+       option required true
+
+config variable
+       option name 'users'
+       option section 'samba.sambashare'
+       option title 'Allowed Users'
+
+config variable
+       option name 'read_only'
+       option section 'samba.sambashare'
+       option title 'Read Only'
+       option datatype boolean
+
+config variable
+       option name 'guest_ok'
+       option section 'samba.sambashare'
+       option title 'Allow Guests'
+       option datatype boolean
+
+config variable
+       option name 'create_mask'
+       option section 'samba.sambashare'
+       option title 'Create Mask'
+       option description 'Mask for new files'
+
+config variable
+       option name 'dir_mask'
+       option section 'samba.sambashare'
+       option title 'Directory Mask'
+       option description 'Mask for new directories'
index 1de2144..6ce96e5 100644 (file)
@@ -1,5 +1,8 @@
 package system
 
 package system
 
+config package
+       option title 'System configuration'
+
 config section
        option name     'system'
        option title    'General system configuration'
 config section
        option name     'system'
        option title    'General system configuration'
@@ -19,3 +22,77 @@ config variable
        option title    'Option timezone'
        option section  'system.system'
        option required true
        option title    'Option timezone'
        option section  'system.system'
        option required true
+
+config variable
+        option name 'log_size'
+        option section 'system.system'
+        option title 'System log buffer size (kiB)'
+       option datatype uint
+
+config variable
+        option name 'log_ip'
+        option section 'system.system'
+        option title 'External system log server'
+       option datatype ipaddr
+
+config variable
+        option name 'conloglevel'
+        option section 'system.system'
+        option title 'Log output level'
+        option description 'Level of log messages on the console'
+       option datatype integer
+
+config section
+       option name 'led'
+       option package 'system'
+       option title 'LED Configuration'
+
+config variable
+       option name 'name'
+       option section 'system.led'
+       option title 'LED Name'
+       option required true
+
+config variable
+       option name 'sysfs'
+       option section 'system.led'
+       option title 'LED Device'
+       option required true
+
+config variable
+       option name 'default'
+       option section 'system.led'
+       option title 'Default state'
+       option datatype boolean
+
+config variable
+       option name 'trigger'
+       option section 'system.led'
+       option title 'Trigger'
+       option required true
+
+config variable
+       option name 'delayon'
+       option section 'system.led'
+       option title 'On-State Delay'
+       option description 'Time (in ms) the LED is on'
+       list depends 'trigger=timer'
+
+config variable
+       option name 'delayoff'
+       option section 'system.led'
+       option title 'Off-State Delay'
+       option description 'Time (in ms) the LED is off'
+       list depends 'trigger=timer'
+
+config variable
+       option name 'dev'
+       option section 'system.led'
+       option title 'Device'
+       list depends 'trigger=netdev'
+
+config variable
+       option name 'mode'
+       option section 'system.led'
+       option title 'Trigger Mode'
+       list depends 'trigger=netdev'
index 102af4d..8574d03 100644 (file)
@@ -1,8 +1,11 @@
 package upnpd
 
 package upnpd
 
+config package
+       option title    'Miniupnpd UPNP daemon'
+
 config section
        option name     'upnpd'
 config section
        option name     'upnpd'
-       option title    'Common upnpd settings'
+       option title    'Settings'
        option package  'upnpd'
        option unique   true
 
        option package  'upnpd'
        option unique   true
 
diff --git a/libs/uvl/root/lib/uci/schema/default/uvc-streamer b/libs/uvl/root/lib/uci/schema/default/uvc-streamer
new file mode 100644 (file)
index 0000000..9ea255c
--- /dev/null
@@ -0,0 +1,41 @@
+#package uvc-streamer
+
+config package
+       option title 'UVC-Streamer webcam streaming configuration'
+
+config section
+       option name 'uvc-streamer'
+       option package 'uvc-streamer'
+       option title 'Settings'
+       option unique true
+       option required true
+
+config variable
+       option name 'enabled'
+       option section 'uvc-streamer.uvc-streamer'
+       option title 'Enable'
+       option required true
+       option datatype boolean
+
+config variable
+       option name 'device'
+       option section 'uvc-streamer.uvc-streamer'
+       option title 'Device'
+
+config variable
+       option name 'resolution'
+       option section 'uvc-streamer.uvc-streamer'
+       option title 'Resolution'
+       option required true
+
+config variable
+       option name 'framespersecond'
+       option section 'uvc-streamer.uvc-streamer'
+       option title 'Frames per second'
+       option datatype uint
+
+config variable
+       option name 'port'
+       option section 'uvc-streamer.uvc-streamer'
+       option title 'Port'
+       option datatype port
diff --git a/libs/uvl/root/lib/uci/schema/default/wireless b/libs/uvl/root/lib/uci/schema/default/wireless
new file mode 100644 (file)
index 0000000..fa9598b
--- /dev/null
@@ -0,0 +1,504 @@
+package wireless
+
+config package
+       option title 'Wireless LAN'
+
+config section
+       option name 'wifi-device'
+       option package 'wireless'
+       option title 'Devices'
+       option named true
+
+config variable
+       option name 'disabled'
+       option section 'wireless.wifi-device'
+       option title 'disabled'
+       option datatype boolean
+
+config variable
+       option name 'type'
+       option section 'wireless.wifi-device'
+       option title 'Type'
+       option required true
+
+config variable
+       option name 'channel'
+       option section 'wireless.wifi-device'
+       option title 'Channel'
+       option datatype uint
+
+config variable
+       option name 'mode'
+       option section 'wireless.wifi-device'
+       option title 'Mode (atheros)'
+       option required true
+       option type enum
+       list depends type=atheros
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value ''
+       option title 'auto'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value '11b'
+       option title '802.11b'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value '11g'
+       option title '802.11g'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value '11a'
+       option title '802.11a'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value '11bg'
+       option title '802.11b+g'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value '11gdt'
+       option title '802.11adt'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value '11adt'
+       option title '802.11adt'
+
+config enum
+       option variable 'wireless.wifi-device.mode'
+       option value 'fh'
+       option title 'Frequency Hopping'
+
+config variable
+       option name 'diversity'
+       option section 'wireless.wifi-device'
+       option title 'Diversity (atheros)'
+       option datatype boolean
+       list depends type=atheros
+
+config variable
+       option name 'txantenna'
+       option section 'wireless.wifi-device'
+       option title 'Transmitter Antenna (atheros)'
+       option datatype uint
+       list depends type=atheros
+
+config variable
+       option name 'rxantenna'
+       option section 'wireless.wifi-device'
+       option title 'Receiver Antenna (atheros)'
+       option datatype uint
+       list depends type=atheros
+
+config variable
+       option name 'distance'
+       option section 'wireless.wifi-device'
+       option title 'Distance Optimization (atheros, broadcom)'
+       option description 'Distance to farthest network member in meters.'
+       option datatype uint
+       list depends type=atheros
+       list depends type=broadcom
+
+config variable
+       option name 'macpolicy'
+       option section 'wireless.wifi-device'
+       option title 'MAC-Address Filter (broadcom)'
+       option type enum
+       list depends type=broadcom
+
+config enum
+       option variable 'wireless.wifi-device.macpolicy'
+       option value 'deny'
+       option title 'Allow listed only'
+
+config enum
+       option variable 'wireless.wifi-device.macpolicy'
+       option value 'allow'
+       option title 'Allow all except listed'
+
+config variable
+       option name 'maclist'
+       option section 'wireless.wifi-device'
+       option title 'MAC-List (broadcom)'
+       list depends 'type=broadcom, macpolicy=allow'
+       list depends 'type=broadcom, macpolicy=deny'
+       option multival true
+       option datatype macaddr
+
+config variable
+       option name 'txant'
+       option section 'wireless.wifi-device'
+       option title 'Transmitter Antenna (broadcom)'
+       option datatype uint
+       list depends 'type=broadcom'
+
+config variable
+       option name 'rxant'
+       option section 'wireless.wifi-device'
+       option title 'Receiver Antenna (broadcom)'
+       option datatype uint
+       list depends 'type=broadcom'
+
+config variable
+       option name 'frameburst'
+       option section 'wireless.wifi-device'
+       option title 'Frame Bursting (broadcom)'
+       option datatype boolean
+       list depends 'type=broadcom'
+
+config variable
+       option name 'country'
+       option section 'wireless.wifi-device'
+       option title 'Country Code (broadcom)'
+       list depends 'type=broadcom'
+
+config variable
+       option name 'maxassoc'
+       option section 'wireless.wifi-device'
+       option title 'Connection Limit (broadcom)'
+       option datatype uint
+       list depends 'type=broadcom'
+
+
+config section
+       option name 'wifi-iface'
+       option package 'wireless'
+       option title 'Interfaces'
+
+config variable
+       option name 'ssid'
+       option section 'wireless.wifi-iface'
+       option title 'ESSID'
+
+config variable
+       option name 'network'
+       option section 'wireless.wifi-iface'
+       option title 'Network'
+       option description 'Add the Wifi network to physical network'
+       option type reference
+       list valueof network.interface
+
+config variable
+       option name 'mode'
+       option section 'wireless.wifi-iface'
+       option title 'Mode'
+       option required true
+       option type enum
+
+config enum
+       option variable 'wireless.wifi-iface.mode'
+       option value 'ap'
+       option title 'Access Point'
+
+config enum
+       option variable 'wireless.wifi-iface.mode'
+       option value 'adhoc'
+       option title 'Ad-Hoc'
+
+config enum
+       option variable 'wireless.wifi-iface.mode'
+       option value 'sta'
+       option title 'Client'
+
+config enum
+       option variable 'wireless.wifi-iface.mode'
+       option value 'monitor'
+       option title 'Monitor'
+
+config enum
+       option variable 'wireless.wifi-iface.mode'
+       option value 'ahdemo'
+       option title 'Pseudo Ad-Hoc (ahdemo)'
+
+config enum
+       option variable 'wireless.wifi-iface.mode'
+       option value 'wds'
+       option title 'WDS'
+
+config variable
+       option name 'bssid'
+       option section 'wireless.wifi-iface'
+       option title BSSID
+
+config variable
+       option name 'txpower'
+       option section 'wireless.wifi-iface'
+       option title 'Transmit Power (mac80211, atheros)'
+       option description 'dbm'
+       option datatype uint
+
+config variable
+       option name 'frag'
+       option section 'wireless.wifi-iface'
+       option title 'Fragmentation Threshold (mac80211, atheros)'
+       option datatype uint
+
+config variable
+       option name 'rts'
+       option section 'wireless.wifi-iface'
+       option title 'RTS/CTS Threshold (mac80211, atheros)'
+       option datatype uint
+
+config variable
+       option name 'wds'
+       option section 'wireless.wifi-iface'
+       option title 'WDS (atheros)'
+       option datatype boolean
+       list depends 'mode=ap'
+       list depends 'mode=sta'
+
+config variable
+       option name 'wdssep'
+       option section 'wireless.wifi-iface'
+       option title 'Separate WDS (atheros)'
+       option datatype boolean
+       list depends 'wds=1,mode=ap'
+
+config variable
+       option name 'doth'
+       option section 'wireless.wifi-iface'
+       option title '802.11h (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'hidden'
+       option section 'wireless.wifi-iface'
+       option title 'Hide ESSID (atheros, broadcom)'
+       option datatype boolean
+       list depends 'mode=ap'
+       list depends 'mode=adhoc'
+       list depends 'mode=wds'
+
+config variable
+       option name 'isolate'
+       option section 'wireless.wifi-iface'
+       option title 'isolate (atheros, broadcom)'
+       option datatype boolean
+       list depends 'mode=ap'
+
+config variable
+       option name 'bgscan'
+       option section 'wireless.wifi-iface'
+       option title 'Background Scan (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'macpolicy'
+       option section 'wireless.wifi-iface'
+       option title 'MAC-Address Filter (atheros)'
+       option type enum
+
+config enum
+       option variable 'wireless.wifi-iface.macpolicy'
+       option value 'deny'
+       option title 'Allow listed only'
+
+config enum
+       option variable 'wireless.wifi-iface.macpolicy'
+       option value 'allow'
+       option title 'Allow all except listed'
+
+config variable
+       option name 'maclist'
+       option section 'wireless.wifi-iface'
+       option title 'MAC-List (atheros)'
+       list depends 'macpolicy=allow'
+       list depends 'macpolicy=deny'
+
+config variable
+       option name 'rate'
+       option section 'wireless.wifi-iface'
+       option title 'Transmission Rate (atheros)'
+
+config variable
+       option name 'mcast_rate'
+       option section 'wireless.wifi-iface'
+       option title 'Multicast Rate (atheros)'
+
+config variable
+       option name 'minrate'
+       option section 'wireless.wifi-iface'
+       option title 'Minimum Rate (atheros)'
+
+config variable
+       option name 'maxrate'
+       option section 'wireless.wifi-iface'
+       option title 'Maximum Rate (atheros)'
+
+config variable
+       option name 'compression'
+       option section 'wireless.wifi-iface'
+       option title 'Compression (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'bursting'
+       option section 'wireless.wifi-iface'
+       option title 'Frame Bursting (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'turbo'
+       option section 'wireless.wifi-iface'
+       option title 'Turbo Mode (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'ff'
+       option section 'wireless.wifi-iface'
+       option title 'Fast Frames (atheros)'
+
+config variable
+       option name 'wmm'
+       option section 'wireless.wifi-iface'
+       option title 'WMM Mode (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'xr'
+       option section 'wireless.wifi-iface'
+       option title 'XR Support (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'ar'
+       option section 'wireless.wifi-iface'
+       option title 'AR Support (atheros)'
+       option datatype boolean
+
+config variable
+       option name 'encryption'
+       option section 'wireless.wifi-iface'
+       option title 'Encryption'
+       option description 'WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP and ad-hoc mode) to be installed.'
+       option type enum
+       
+config enum
+       option variable 'wireless.wifi-iface.encryption'
+       option value 'none'
+       option title 'No Encryption'
+
+config enum
+       option variable 'wireless.wifi-iface.encryption'
+       option value 'wep'
+       option title 'WEP'
+
+config enum
+       option variable 'wireless.wifi-iface.encryption'
+       option value 'psk'
+       option title 'WPA-PSK'
+
+config enum
+       option variable 'wireless.wifi-iface.encryption'
+       option value 'psk2'
+       option title 'WPA2-PSK'
+
+config enum
+       option variable 'wireless.wifi-iface.encryption'
+       option value 'wpa'
+       option title 'WPA-EAP'
+
+config enum
+       option variable 'wireless.wifi-iface.encryption'
+       option value 'wpa2i'
+       option title 'WPA2-EAP'
+
+config variable
+       option name 'server'
+       option section 'wireless.wifi-iface'
+       option title 'RadiusServer'
+       list depends 'encryption=wpa,mode=ap'
+       list depends 'encryption=wpa2i,mode=ap'
+       option datatype host
+
+config variable
+       option name 'port'
+       option section 'wireless.wifi-iface'
+       option title 'Radius-Port'
+       list depends 'encryption=wpa,mode=ap'
+       list depends 'encryption=wpa2i,mode=ap'
+       option datatype port
+
+config variable
+       option name 'key'
+       option section 'wireless.wifi-iface'
+       option title 'Key'
+       list depends 'encryption=wep'
+       list depends 'encryption=psk'
+       list depends 'encryption=wpa,mode=ap'
+       list depends 'encryption=psk2'
+       list depends 'encryption=wpa2i,mode=ap'
+
+config variable
+       option name 'nasid'
+       option section 'wireless.wifi-iface'
+       option title 'NAS ID'
+       list depends 'encryption=wpa,mode=ap'
+       list depends 'encryption=wpa2i,mode=ap'
+
+config variable
+       option name 'eap_type'
+       option section 'wireless.wifi-iface'
+       option title 'EAP-Method'
+       option type enum
+       list depends 'encryption=wpa,mode=sta'
+       list depends 'encryption=wpa2i,mode=sta'
+
+config enum
+       option variable 'wireless.wifi-iface.eap_type'
+       option value 'TLS'
+
+config enum
+       option variable 'wireless.wifi-iface.eap_type'
+       option value 'PEAP'
+
+config variable
+       option name 'ca_cert'
+       option section 'wireless.wifi-iface'
+       option title 'Path to CA-Certificate'
+       list depends 'encryption=wpa,mode=sta'
+       list depends 'encryption=wpa2i,mode=sta'
+       option datatype file
+
+config variable
+       option name 'priv_key'
+       option section 'wireless.wifi-iface'
+       option title 'Path to Private Key'
+       list depends 'mode=sta,encryption=wpa2i,eap_type=TLS'
+       list depends 'mode=sta,encryption=wpa,eap_type=TLS'
+       option datatype file
+
+
+config variable
+       option name 'priv_key_pwd'
+       option section 'wireless.wifi-iface'
+       option title 'Password of Private Key'
+       list depends 'mode=sta,encryption=wpa2i,eap_type=TLS'
+       list depends 'mode=sta,encryption=wpa,eap_type=TLS'
+
+config variable
+       option name 'auth'
+       option section 'wireless.wifi-iface'
+       option title 'PEAP-Authentication'
+       list depends 'mode=sta,encryption=wpa2i,eap_type=PEAP'
+       list depends 'mode=sta,encryption=wpa,eap_type=PEAP'
+
+config variable
+       option name 'identity'
+       option section 'wireless.wifi-iface'
+       option title 'PEAP-Identity'
+       list depends 'mode=sta,encryption=wpa2i,eap_type=PEAP'
+       list depends 'mode=sta,encryption=wpa,eap_type=PEAP'
+
+config variable
+       option name 'password'
+       option section 'wireless.wifi-iface'
+       option title 'PEAP-Password'
+       list depends 'mode=sta,encryption=wpa2i,eap_type=PEAP'
+       list depends 'mode=sta,encryption=wpa,eap_type=PEAP'