From ba15ccf6f03cd7c8bd4dd261e7151ca3f8e9243f Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Mon, 4 Dec 2006 23:22:06 +0000
Subject: add option for setting the mac address (#1014)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5690 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 package/base-files/files/lib/network/config.sh | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

(limited to 'package/base-files')

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
-- 
cgit v1.2.3