From ca7dad4348fa6ae53f760e7dcf018cd3cc5acbd3 Mon Sep 17 00:00:00 2001 From: Kichan Kwon Date: Wed, 3 Jun 2020 15:29:33 +0900 Subject: [PATCH] Modify signed file structure - Add delta size - Magic number : TOTA_SIGNED -> TOTA_SIGNED_V1 Change-Id: Ide8067a7d7968d8493beacbd48f54294f6efb3b3 Signed-off-by: Kichan Kwon --- mk_delta/common/bin/sign_upg.sh | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/mk_delta/common/bin/sign_upg.sh b/mk_delta/common/bin/sign_upg.sh index f3b9677..0bf6411 100755 --- a/mk_delta/common/bin/sign_upg.sh +++ b/mk_delta/common/bin/sign_upg.sh @@ -34,6 +34,7 @@ CheckNull() { PKCS=$1 PKCS_PASSWORD=$2 FILE=$3 +FILE_SIZE="" SIGNED_FILE=$4 CheckArgument() { ArgumentList=( @@ -47,6 +48,9 @@ CheckArgument() { CheckFile ${ARGUMENT} ${ARGUMENT}" not exist" done + FILE_SIZE=$(${STAT} -c %s ${FILE}) + CheckNull ${FILE_SIZE} "Failed to get the size of file" + if [ -z ${SIGNED_FILE} ]; then SIGNED_FILE=${FILE} fi @@ -116,22 +120,23 @@ ConvertCert() { } RESULT_FILE="" -MAGIC_NUMBER="TOTA_SIGNED" +MAGIC_NUMBER="TOTA_SIGNED_V1" AttachSignature() { echo "Attaching signature..." RESULT_FILE=${TMP_DIR}/result - echo -n ${MAGIC_NUMBER} > ${RESULT_FILE} - cat ${SIGNATURE} ${CERT_CONVERTED} >> ${RESULT_FILE} + cat ${SIGNATURE} ${CERT_CONVERTED} > ${RESULT_FILE} + ${PERL} -e "print pack('L', ${FILE_SIZE})" >> ${RESULT_FILE} ${PERL} -e "print pack('L', ${SIGNATURE_SIZE})" >> ${RESULT_FILE} ${PERL} -e "print pack('L', ${CERT_CONVERTED_SIZE})" >> ${RESULT_FILE} + echo -n ${MAGIC_NUMBER} >> ${RESULT_FILE} } VerifySignature() { echo "Verifying signature..." - EXPECTED_SIZE=$(expr ${#MAGIC_NUMBER} + ${SIGNATURE_SIZE} + ${CERT_CONVERTED_SIZE} + 8) + EXPECTED_SIZE=$(expr ${#MAGIC_NUMBER} + ${SIGNATURE_SIZE} + ${CERT_CONVERTED_SIZE} + 12) REAL_SIZE=$(${STAT} -c %s ${RESULT_FILE}) if [ ${EXPECTED_SIZE} -ne ${REAL_SIZE} ]; then -- 2.7.4