From: Rafał Miłecki Date: Mon, 15 Dec 2014 09:59:44 +0000 (+0000) Subject: brcm47xx: detect (and still reject for now) CyberTAN fw format X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=a5b6b7e41943fec0eb28593ce92b0713990c8d23;p=openwrt%2Fstaging%2Faparcar.git brcm47xx: detect (and still reject for now) CyberTAN fw format Signed-off-by: Rafał Miłecki SVN-Revision: 43714 --- diff --git a/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh b/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh index d216ca4d04..412d6daaff 100644 --- a/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh @@ -1,5 +1,11 @@ PART_NAME=firmware +# $(1): file to read magic from +# $(2): offset in bytes +get_magic_long_at() { + dd if="$1" skip=$2 bs=1 count=4 2>/dev/null | hexdump -v -n 4 -e '1/1 "%02x"' +} + brcm47xx_identify() { local magic @@ -15,6 +21,12 @@ brcm47xx_identify() { ;; esac + magic=$(get_magic_long_at "$1" 14) + [ "$magic" = "55324e44" ] && { + echo "cybertan" + return + } + echo "unknown" }