diff --git a/package/base-files/files/lib/network/config.sh b/package/base-files/files/lib/network/config.sh index 9b4320507..29b7fe5c1 100755 --- a/package/base-files/files/lib/network/config.sh +++ b/package/base-files/files/lib/network/config.sh @@ -231,6 +231,7 @@ setup_interface() { # Interface settings config_get mtu "$config" mtu config_get macaddr "$config" macaddr + macaddr="${macaddr:-$3}" grep "$iface:" /proc/net/dev > /dev/null && \ $DEBUG ifconfig "$iface" down && \ $DEBUG ifconfig "$iface" ${macaddr:+hw ether "$macaddr"} ${mtu:+mtu $mtu} up diff --git a/package/base-files/files/sbin/wifi b/package/base-files/files/sbin/wifi index e9752c603..30ecb1b77 100755 --- a/package/base-files/files/sbin/wifi +++ b/package/base-files/files/sbin/wifi @@ -70,7 +70,7 @@ start_net() {( [ -f "/var/run/$iface.pid" ] && kill "$(cat /var/run/${iface}.pid)" 2>/dev/null include /lib/network scan_interfaces - setup_interface "$1" "$2" + setup_interface "$1" "$2" "$3" )} set_wifi_up() { diff --git a/package/broadcom-wl/files/lib/wifi/broadcom.sh b/package/broadcom-wl/files/lib/wifi/broadcom.sh index 12002121a..998a2f58f 100644 --- a/package/broadcom-wl/files/lib/wifi/broadcom.sh +++ b/package/broadcom-wl/files/lib/wifi/broadcom.sh @@ -251,8 +251,8 @@ enable_broadcom() { net_cfg="$(find_net_config "$vif")" [ -z "$net_cfg" ] || { bridge="$(bridge_interface "$net_cfg")" - append if_up "start_net '$ifname' '$net_cfg'" ";$N" append if_up "set_wifi_up '$vif' '$ifname'" ";$N" + append if_up "start_net '$ifname' '$net_cfg' \$(wlc ifname '$ifname' bssid)" ";$N" } [ -z "$nasopts" ] || { eval "${vif}_ssid=\"\$ssid\""