summaryrefslogtreecommitdiffstats
path: root/package/base-files
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-05-27 14:04:28 +0000
committerFelix Fietkau <nbd@openwrt.org>2010-05-27 14:04:28 +0000
commit6df2ad3e70f9f7f85e785efc8f2df4265bef5109 (patch)
treeff5e1130b26f4ae9c5f10021d224c6cc8ae77fc0 /package/base-files
parent5399ba975151551e37faf709949adb5729ea039a (diff)
downloadmaster-31e0f0ae-6df2ad3e70f9f7f85e785efc8f2df4265bef5109.tar.gz
master-31e0f0ae-6df2ad3e70f9f7f85e785efc8f2df4265bef5109.tar.bz2
master-31e0f0ae-6df2ad3e70f9f7f85e785efc8f2df4265bef5109.zip
when changing the mac address of a bridge interface, keep member interface addresses in sync (patch from #7111)
SVN-Revision: 21577
Diffstat (limited to 'package/base-files')
-rwxr-xr-xpackage/base-files/files/lib/network/config.sh4
1 files changed, 3 insertions, 1 deletions
diff --git a/package/base-files/files/lib/network/config.sh b/package/base-files/files/lib/network/config.sh
index 1a77145f5a..32170bb274 100755
--- a/package/base-files/files/lib/network/config.sh
+++ b/package/base-files/files/lib/network/config.sh
@@ -144,6 +144,8 @@ prepare_interface() {
config_get iftype "$config" type
case "$iftype" in
bridge)
+ local macaddr
+ config_get macaddr "$config" macaddr
[ -x /usr/sbin/brctl ] && {
ifconfig "br-$config" 2>/dev/null >/dev/null && {
local newdevs devices
@@ -168,7 +170,7 @@ prepare_interface() {
# result in another setup_interface() call, so we simply stop processing
# the current event at this point.
}
- ifconfig "$iface" up 2>/dev/null >/dev/null
+ ifconfig "$iface" ${macaddr:+hw ether "${macaddr}"} up 2>/dev/null >/dev/null
return 1
}
;;