diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2010-04-10 14:29:01 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2010-04-10 14:29:01 +0000 |
commit | d6c27b7b066d898d6d74af4ba8b08b8e07e16ff6 (patch) | |
tree | f73d8c907ef233b329aa88ff4662e9bbd6e83e2c /target/linux/brcm-2.4/base-files/etc | |
parent | 797d41e0611180b39b3b0c5611216bad648dc1b5 (diff) | |
download | master-187ad058-d6c27b7b066d898d6d74af4ba8b08b8e07e16ff6.tar.gz master-187ad058-d6c27b7b066d898d6d74af4ba8b08b8e07e16ff6.tar.bz2 master-187ad058-d6c27b7b066d898d6d74af4ba8b08b8e07e16ff6.zip |
[brcm47xx] add script to fixup the wireless mac (#7102)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20775 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm-2.4/base-files/etc')
-rwxr-xr-x | target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup b/target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup new file mode 100755 index 0000000000..ee1b752201 --- /dev/null +++ b/target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup @@ -0,0 +1,33 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2010 OpenWrt.org + +START=41 + +boot() { + [ -d /sys/class/ieee80211 ] || exit + + commit=0 + + fixup_wmac() { + local cfg="$1" + local cfmac + + config_get cfmac "$cfg" macaddr + + [ "$cfmac" != "00:90:4c:5f:00:2a" ] || { + local nvmac="$(nvram get il0macaddr 2>/dev/null)" + [ -n "$nvmac" ] && [ "$nvmac != "$cfmac ] && { + uci set wireless.$cfg.macaddr="$nvmac" + commit=1 + } + } + } + + config_load wireless + config_foreach fixup_wmac wifi-device + + [ "$commit" = 1 ] && uci commit wireless +} + +start() { :; } +stop() { :; } |