summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-11-08 12:16:21 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-11-08 12:16:21 +0000
commitcc3f4bb9ffdbd3d0161be5b232f3b36d1fd51215 (patch)
tree95feeca98ce20ce522adba0d9315840b6253c74e
parent74d76fd4ee10ce4d160c50222d3951cf6d2778ef (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
-rw-r--r--package/base-files/Makefile2
-rwxr-xr-xpackage/base-files/files/lib/functions.sh7
2 files changed, 4 insertions, 5 deletions
diff --git a/package/base-files/Makefile b/package/base-files/Makefile
index 3ba30c3abc..f0b2e37d5b 100644
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
include $(INCLUDE_DIR)/version.mk
PKG_NAME:=base-files
-PKG_RELEASE:=146
+PKG_RELEASE:=147
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
PKG_BUILD_DEPENDS:=opkg/host
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() {