addif() {
scan_interfaces
- setup_interface "$INTERFACE"
+ local cfg="$(find_config "$INTERFACE")"
+
+ # check the autoload setting
+ config_get auto "$cfg" auto
+ case "$auto" in
+ 1|on|enabled) setup_interface "$INTERFACE";;
+ esac
+
# find all vlan configurations for this interface and set them up as well
for ifc in $interfaces; do
config_get iftype "$ifc" type
- case "$iftype" in
- bridge) config_get ifs "$ifc" ifnames;;
- *) config_get ifs "$ifc" ifname;;
- esac
+ config_get ifs "$ifc" device
for dev in $ifs; do
[ "${dev%%\.*}" = "$INTERFACE" -a "$dev" != "$INTERFACE" ] && {
add_vlan "$dev"