aboutsummaryrefslogtreecommitdiffstats
path: root/package/base-files/files/lib
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2009-06-01 18:09:05 +0000
committerFelix Fietkau <nbd@openwrt.org>2009-06-01 18:09:05 +0000
commit642870d0cc5cece00729b638b24e79dad1a7768b (patch)
treef7fc45afc4d4691c5b93f34f5125e557e25658c4 /package/base-files/files/lib
parentbc8ed5ec5fd51749d06c238789c8a2967936e385 (diff)
downloadupstream-642870d0cc5cece00729b638b24e79dad1a7768b.tar.gz
upstream-642870d0cc5cece00729b638b24e79dad1a7768b.tar.bz2
upstream-642870d0cc5cece00729b638b24e79dad1a7768b.zip
network: prevent unnecessary interface down/up cycles if no mac address change is requested
SVN-Revision: 16269
Diffstat (limited to 'package/base-files/files/lib')
-rwxr-xr-xpackage/base-files/files/lib/network/config.sh5
1 files changed, 3 insertions, 2 deletions
diff --git a/package/base-files/files/lib/network/config.sh b/package/base-files/files/lib/network/config.sh
index 808463df52..cefd559567 100755
--- a/package/base-files/files/lib/network/config.sh
+++ b/package/base-files/files/lib/network/config.sh
@@ -246,9 +246,10 @@ setup_interface() {
# Interface settings
config_get mtu "$config" mtu
config_get macaddr "$config" macaddr
- grep "$iface:" /proc/net/dev > /dev/null && \
- $DEBUG ifconfig "$iface" down && \
+ grep "$iface:" /proc/net/dev > /dev/null && {
+ [ -n "$macaddr" ] && $DEBUG ifconfig "$iface" down
$DEBUG ifconfig "$iface" ${macaddr:+hw ether "$macaddr"} ${mtu:+mtu $mtu} up
+ }
set_interface_ifname "$config" "$iface"
pidfile="/var/run/$iface.pid"