From 23cf4263246d4304323c3f732445a8f478976bac Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Fri, 8 Nov 2013 12:16:21 +0000 Subject: 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 [juhosg: add more fixes, update commit message] Signed-off-by: Gabor Juhos SVN-Revision: 38690 --- package/base-files/files/lib/functions.sh | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'package/base-files/files/lib/functions.sh') diff --git a/package/base-files/files/lib/functions.sh b/package/base-files/files/lib/functions.sh index 19cfbae..6cb6df9 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() { -- cgit v1.1