summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau2010-05-27 14:04:28 +0000
committerFelix Fietkau2010-05-27 14:04:28 +0000
commit21ba4bfccfd1ceaa06c1cf7bd7c3e6f792815e25 (patch)
tree82a1008c22fc20302db8d29a4ee73fbc5d84e7b7
parent9f27f73bb79fe95a5de3590d4a8c231d37d6722f (diff)
downloadarchive-21ba4bfccfd1ceaa06c1cf7bd7c3e6f792815e25.tar.gz
when changing the mac address of a bridge interface, keep member interface addresses in sync (patch from #7111)
SVN-Revision: 21577
-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
}
;;