iopsys-feed/layer2interface/broadcom/etc/init.d/layer2_interface_vlan

38 lines
818 B
Bash
Executable file

#!/bin/sh /etc/rc.common
. /lib/functions.sh
START=22
USE_PROCD=1
vlan_inf_conf() {
local name baseifname ifname
local vlan8021p vlan8021q
config_get name $1 name
config_get baseifname $1 baseifname
config_get ifname $1 ifname
config_get vlan8021p $1 vlan8021p
config_get vlan8021q $1 vlan8021q
[ -n "$name" ] || return
uci -q set network.$name=device
uci -q set network.$name.type=8021q
uci -q set network.$name.priority=$vlan8021p
uci -q set network.$name.vid="$vlan8021q"
uci -q set network.$name.ifname="$baseifname"
uci -q set network.$name.name="$baseifname.$vlan8021q"
}
start_service() {
config_load layer2_interface_vlan
config_foreach vlan_inf_conf vlan_interface
ubus call uci commit '{"config":"network"}'
}
service_triggers() {
procd_add_reload_trigger layer2_interface_vlan
}