From: Emil Velikov Date: Sun, 22 Sep 2024 15:44:25 +0000 (+0100) Subject: copy-firmware.sh: call ./check_whence.py before parsing the file X-Git-Tag: 20241017~9^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6edd0fd36acb93c8075bbd700ad91f53fc810c0e;p=thirdparty%2Flinux-firmware.git copy-firmware.sh: call ./check_whence.py before parsing the file Currently ./check_whence.py is used when submitting new firmware, while copy-firmware.sh when the firmware is to be consumed. Since the latter does (very little) validation, having a malformed WHENCE file can lead to all sorted of problems. From the obvious, where it errors out, to more serious one where it overwrites or executes something it should not have. Just call check_whence.py and error out. It takes 0.2s on my 5 year old mid-range laptop, so the overhead is negligible. Signed-off-by: Emil Velikov --- diff --git a/copy-firmware.sh b/copy-firmware.sh index fa83492e..0f21022a 100755 --- a/copy-firmware.sh +++ b/copy-firmware.sh @@ -71,6 +71,9 @@ if test -d "$destdir"; then find "$destdir" -type d -empty >/dev/null || warn "destination folder is not empty." fi +$verbose "Checking that WHENCE file is formatted properly" +./check_whence.py || err "check_whence.py has detected errors." + # shellcheck disable=SC2162 # file/folder name can include escaped symbols grep -E '^(RawFile|File):' WHENCE | sed -E -e 's/^(RawFile|File): */\1 /;s/"//g' | while read k f; do test -f "$f" || continue