aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files/files/lib
diff options
context:
space:
mode:
Diffstat (limited to 'package/base-files/files/lib')
-rwxr-xr-xpackage/base-files/files/lib/network/config.sh7
1 files changed, 5 insertions, 2 deletions
diff --git a/package/base-files/files/lib/network/config.sh b/package/base-files/files/lib/network/config.sh
index 90f5bf7424..8188203d31 100755
--- a/package/base-files/files/lib/network/config.sh
+++ b/package/base-files/files/lib/network/config.sh
@@ -66,6 +66,7 @@ setup_interface() {
local iface="$1"
local config="$2"
local proto
+ local macaddr
[ -n "$config" ] || {
config=$(find_config "$iface")
@@ -76,7 +77,8 @@ setup_interface() {
config_get iftype "$config" type
ifconfig "$iface" 2>/dev/null >/dev/null && {
- # make sure the interface is removed from any existing bridge
+ # make sure the interface is removed from any existing bridge and brought down
+ ifconfig "$iface" down
unbridge "$iface"
}
@@ -101,7 +103,8 @@ setup_interface() {
# Interface settings
config_get mtu "$config" mtu
- $DEBUG ifconfig "$iface" ${mtu:+mtu $mtu} up
+ config_get macddr "$config" macaddr
+ $DEBUG ifconfig "$iface" ${macaddr:+hw ether "$macaddr"} ${mtu:+mtu $mtu} up
pidfile="/var/run/$iface.pid"
case "$proto" in