base-files: add function to get binary mac from file
authorMathias Kresin <dev@kresin.me>
Fri, 26 Jan 2018 21:54:06 +0000 (22:54 +0100)
committerMathias Kresin <dev@kresin.me>
Wed, 14 Mar 2018 18:04:52 +0000 (19:04 +0100)
Add a fucntion to get the a binary mac address from file. Use the new
function for mtd_get_mac_binary() to limit duplicate code.

Signed-off-by: Mathias Kresin <dev@kresin.me>
package/base-files/files/lib/functions/system.sh

index 35f6d10..d4402c3 100644 (file)
@@ -1,5 +1,17 @@
 # Copyright (C) 2006-2013 OpenWrt.org
 
+get_mac_binary() {
+       local path="$1"
+       local offset="$2"
+
+       if [ -z "$path" ]; then
+               echo "get_mac_binary: file $path not found!" >&2
+               return
+       fi
+
+       hexdump -v -n 6 -s $offset -e '5/1 "%02x:" 1/1 "%02x"' $path 2>/dev/null
+}
+
 find_mtd_chardev() {
        local INDEX=$(find_mtd_index "$1")
        local PREFIX=/dev/mtd
@@ -33,12 +45,7 @@ mtd_get_mac_binary() {
        local part
 
        part=$(find_mtd_part "$mtdname")
-       if [ -z "$part" ]; then
-               echo "mtd_get_mac_binary: partition $mtdname not found!" >&2
-               return
-       fi
-
-       hexdump -v -n 6 -s $offset -e '5/1 "%02x:" 1/1 "%02x"' $part 2>/dev/null
+       get_mac_binary "$part" "$offset"
 }
 
 mtd_get_mac_binary_ubi() {