aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-05-01 23:11:41 +0200
committerMarius Bakke <mbakke@fastmail.com>2019-05-01 23:11:41 +0200
commit3b458d5462e6bbd852c2dc5c6670d5655abf53f5 (patch)
tree4f3ccec0de1c355134369333c17e948e3258d546 /gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch
parent2ca3fdc2db1aef96fbf702a2f26f5e18ce832038 (diff)
parent14da3daafc8dd92fdabd3367694c930440fd72cb (diff)
downloadguix-3b458d5462e6bbd852c2dc5c6670d5655abf53f5.tar
guix-3b458d5462e6bbd852c2dc5c6670d5655abf53f5.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch')
-rw-r--r--gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch b/gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch
new file mode 100644
index 0000000000..063677db4a
--- /dev/null
+++ b/gnu/packages/patches/u-boot-fix-mkimage-header-verification.patch
@@ -0,0 +1,57 @@
+From 48b52117235928cfd7ef1ec5c3f2cff5d7b03862 Mon Sep 17 00:00:00 2001
+From: Jordan Hand <jordanhand22@gmail.com>
+Date: Wed, 10 Apr 2019 09:46:32 -0700
+Subject: [PATCH,v2] fdt: Fix mkimage list to try every header type
+Origin: https://patchwork.ozlabs.org/patch/1083495/
+
+Image type is not supplied to `mkimage -l`. For this reason, we cannot
+use imagetool_verify_print_header_by_type. Instead, this patch uses
+imagetool_verify_print_header to look through all header types to find
+one where image validation succeeds.
+
+This patch fixes failures in test/image/test-imagetools.sh
+
+Signed-off-by: Jordan Hand <jorhand@microsoft.com>
+Tested-by: Alex Kiernan <alex.kiernan@gmail.com>
+Tested-by: Vagrant Cascadian <vagrant@debian.org>
+---
+ tools/mkimage.c | 23 +++++++++++++++--------
+ 1 file changed, 15 insertions(+), 8 deletions(-)
+
+diff --git a/tools/mkimage.c b/tools/mkimage.c
+index 2899adff81..76c3406d37 100644
+--- a/tools/mkimage.c
++++ b/tools/mkimage.c
+@@ -403,14 +403,21 @@ int main(int argc, char **argv)
+ exit (EXIT_FAILURE);
+ }
+
+- /*
+- * scan through mkimage registry for all supported image types
+- * and verify the input image file header for match
+- * Print the image information for matched image type
+- * Returns the error code if not matched
+- */
+- retval = imagetool_verify_print_header_by_type(ptr, &sbuf,
+- tparams, &params);
++ if (params.fflag) {
++ /*
++ * Verifies the header format based on the expected header for
++ * image type in tparams
++ */
++ retval = imagetool_verify_print_header_by_type(ptr, &sbuf,
++ tparams, &params);
++ } else {
++ /**
++ * When listing the image, we are not given the image type. Simply check all
++ * image types to find one that matches our header
++ */
++ retval = imagetool_verify_print_header(ptr, &sbuf,
++ tparams, &params);
++ }
+
+ (void) munmap((void *)ptr, sbuf.st_size);
+ (void) close (ifd);
+--
+2.20.1
+