From e6769d11f38f17fb4427f6022f61c4c2e1ee9d67 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Sat, 29 Oct 2022 22:06:24 +0800 Subject: [PATCH] scripts: fix missing character '0' issue in linksys image In the stock firmware of Linksys, there is a '0' after the crc checksum. Validated on EA6350V3, EA7300 and EA7300V2's stock images. Fixes: 892d741259 build: add a script for generating Linksys factory images Signed-off-by: Shiji Yang --- scripts/linksys-image.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/linksys-image.sh b/scripts/linksys-image.sh index c3baf44844..3b4412c06e 100755 --- a/scripts/linksys-image.sh +++ b/scripts/linksys-image.sh @@ -14,7 +14,7 @@ # The version number of upgrade. Not checked so use arbitrary value (8 bytes) # Model of target device, padded (0x20) to (15 bytes) # CRC checksum of the image to flash (8 byte) -# Padding (0x20) (7 bytes) +# Padding ('0' + 0x20 *7) (8 bytes) # Signature of signer. Not checked so use arbitrary value (16 bytes) # Padding (0x00) (192 bytes) # 0x0A (1 byte) @@ -58,7 +58,7 @@ IMG_OUT="${IMG_IN}.new" dd if="${IMG_IN}" of="${IMG_TMP_OUT}" CRC=$(printf "%08X" $(dd if="${IMG_IN}" bs=$(stat -c%s "${IMG_IN}") count=1|cksum| cut -d ' ' -f1)) -printf ".LINKSYS.01000409%-15s%-8s%-7s%-16s" "${TYPE}" "${CRC}" "" "K0000000F0246434" >> "${IMG_TMP_OUT}" +printf ".LINKSYS.01000409%-15s%-8s%-8s%-16s" "${TYPE}" "${CRC}" "0" "K0000000F0246434" >> "${IMG_TMP_OUT}" dd if=/dev/zero bs=1 count=192 conv=notrunc >> "${IMG_TMP_OUT}" -- 2.30.2