base-files: add ucidef_set_interface_wan() and ucidef_add_switch_ports()
Add further helper functions to uci-defaults-new.sh for easier declarations of complex switch layouts. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 47638
This commit is contained in:
parent
11f2007895
commit
d6b5ce48dd
1 changed files with 50 additions and 0 deletions
|
@ -52,6 +52,14 @@ ucidef_set_interface_lan() {
|
||||||
json_select ..
|
json_select ..
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ucidef_set_interface_wan() {
|
||||||
|
local wan_if=$1
|
||||||
|
|
||||||
|
json_select_object network
|
||||||
|
_ucidef_set_interface wan $wan_if
|
||||||
|
json_select ..
|
||||||
|
}
|
||||||
|
|
||||||
ucidef_set_interfaces_lan_wan() {
|
ucidef_set_interfaces_lan_wan() {
|
||||||
local lan_if=$1
|
local lan_if=$1
|
||||||
local wan_if=$2
|
local wan_if=$2
|
||||||
|
@ -91,6 +99,48 @@ ucidef_add_switch_attr() {
|
||||||
json_select ..
|
json_select ..
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ucidef_add_switch_ports() {
|
||||||
|
local name="$1"; shift
|
||||||
|
local port num role dev idx
|
||||||
|
|
||||||
|
json_select_object switch
|
||||||
|
json_select_object "$name"
|
||||||
|
json_select_array ports
|
||||||
|
|
||||||
|
for port in "$@"; do
|
||||||
|
case "$port" in
|
||||||
|
[0-9]*@*)
|
||||||
|
num="${port%%@*}"
|
||||||
|
dev="${port##*@}"
|
||||||
|
;;
|
||||||
|
[0-9]*:*:[0-9]*)
|
||||||
|
num="${port%%:*}"
|
||||||
|
idx="${port##*:}"
|
||||||
|
role="${port#[0-9]*:}"; role="${role%:*}"
|
||||||
|
;;
|
||||||
|
[0-9]*:*)
|
||||||
|
num="${port%%:*}"
|
||||||
|
role="${port##*:}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ -n "$num" ] && [ -n "$dev$role" ]; then
|
||||||
|
json_add_object
|
||||||
|
json_add_int num "$num"
|
||||||
|
[ -n "$dev" ] && json_add_string device "$dev"
|
||||||
|
[ -n "$role" ] && json_add_string role "$role"
|
||||||
|
[ -n "$idx" ] && json_add_int index "$idx"
|
||||||
|
json_close_object
|
||||||
|
fi
|
||||||
|
|
||||||
|
unset num dev role idx
|
||||||
|
done
|
||||||
|
|
||||||
|
json_select ..
|
||||||
|
json_select ..
|
||||||
|
json_select ..
|
||||||
|
}
|
||||||
|
|
||||||
ucidef_add_switch_vlan() {
|
ucidef_add_switch_vlan() {
|
||||||
local name=$1
|
local name=$1
|
||||||
local vlan=$2
|
local vlan=$2
|
||||||
|
|
Loading…
Reference in a new issue