diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-11-08 12:16:21 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-11-08 12:16:21 +0000 |
commit | cc3f4bb9ffdbd3d0161be5b232f3b36d1fd51215 (patch) | |
tree | 95feeca98ce20ce522adba0d9315840b6253c74e /package/base-files/files/lib | |
parent | 74d76fd4ee10ce4d160c50222d3951cf6d2778ef (diff) |
base-files: mtd_get_mac_ascii bugfix
The mtd_get_mac_ascii utility function was broken. This fixes it.
- Remove the superfluous include of /lib/functions.sh. The
function is already in that file so it is pointless,
- only use a variable if the whole key word matches,
- don't try to process the MAC address if it is empty,
- use 'tr' to canonicalize the MAC address,
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[juhosg: add more fixes, update commit message]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38690 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/base-files/files/lib')
-rwxr-xr-x | package/base-files/files/lib/functions.sh | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/package/base-files/files/lib/functions.sh b/package/base-files/files/lib/functions.sh index 19cfbae172..6cb6df92fd 100755 --- a/package/base-files/files/lib/functions.sh +++ b/package/base-files/files/lib/functions.sh @@ -248,17 +248,16 @@ mtd_get_mac_ascii() local part local mac_dirty - . /lib/functions.sh - part=$(find_mtd_part "$mtdname") if [ -z "$part" ]; then echo "mtd_get_mac_ascii: partition $mtdname not found!" >&2 return fi - mac_dirty=$(strings "$part" | sed -n 's/'"$key"'=//p') + mac_dirty=$(strings "$part" | sed -n 's/^'"$key"'=//p') + # "canonicalize" mac - printf "%02x:%02x:%02x:%02x:%02x:%02x" 0x${mac_dirty//:/ 0x} + [ -n "$mac_dirty" ] && echo ${mac_dirty} | tr [A-F] [a-f] } mtd_get_mac_binary() { |