All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Eichenberger <eichest@gmail.com>
To: devel-sven@geroedel.de, mr.nuke.me@gmail.com, sjg@chromium.org
Cc: u-boot@lists.denx.de
Subject: [PATCH 2/2] tools/fitimage: make sure dumpimage still works when "@" are detected
Date: Mon, 10 Jan 2022 18:48:32 +0100	[thread overview]
Message-ID: <20220110174832.257300-3-eichest@gmail.com> (raw)
In-Reply-To: <20220110174832.257300-1-eichest@gmail.com>

fit_verify_header fails if it detects unit addresses "@". However, this
will break tools like dumpimage on fit images which worked with previous
versions of the tool (e.g. 2020.04 vs 2021.07). As an example the output
of:
dumpimage -l <fit image>
is:
FIT description: U-Boot fitImage for Linux Distribution
Created:         Thu Jan  1 01:00:00 1970
 Image 0 (kernel@1)
  Description:  Linux kernel
  Created:      Thu Jan  1 01:00:00 1970
  Type:         Kernel Image
  Compression:  gzip compressed
  Data Size:    6442456 Bytes = 6291.46 KiB = 6.14 MiB
  Architecture: AArch64
  OS:           Linux
  Load Address: 0x80080000
  Entry Point:  0x80080000
  Hash algo:    sha256
  Hash value:   ...
 Image 1 (fdt@freescale_fsl-s32g274a-evb.dtb)
  Description:  Flattened Device Tree blob
  Created:      Thu Jan  1 01:00:00 1970
  Type:         Flat Device Tree
  Compression:  uncompressed
  Data Size:    39661 Bytes = 38.73 KiB = 0.04 MiB
  Architecture: AArch64
  Hash algo:    sha256
  Hash value:   ...
 Default Configuration: 'conf@freescale_fsl-s32g274a-evb.dtb'
 Configuration 0 (conf@freescale_fsl-s32g274a-evb.dtb)
  Description:  1 Linux kernel, FDT blob
  Kernel:       kernel@1
  FDT:          fdt@freescale_fsl-s32g274a-evb.dtb
  Hash algo:    sha256
  Hash value:   unavailable

But with newer version it shows:
dumpimage -l <fit image>
GP Header: Size d00dfeed LoadAddr 62f0a4

This commit will output a warning that unit addresses were detected but
will not fail:
dumpimage -l <fit image>
Image contains unit addresses @, this will break signing
...

Signed-off-by: Stefan Eichenberger <eichest@gmail.com>
---
 tools/fit_common.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/tools/fit_common.c b/tools/fit_common.c
index 52b63296f8..5c8920de54 100644
--- a/tools/fit_common.c
+++ b/tools/fit_common.c
@@ -26,10 +26,18 @@
 int fit_verify_header(unsigned char *ptr, int image_size,
 			struct image_tool_params *params)
 {
-	if (fdt_check_header(ptr) != EXIT_SUCCESS ||
-	    fit_check_format(ptr, IMAGE_SIZE_INVAL))
+	int ret;
+
+	if (fdt_check_header(ptr) != EXIT_SUCCESS)
 		return EXIT_FAILURE;
 
+	ret = fit_check_format(ptr, IMAGE_SIZE_INVAL);
+	if (ret) {
+		if (ret != -EADDRNOTAVAIL)
+			return EXIT_FAILURE;
+		fprintf(stderr, "Image contains unit addresses @, this will break signing\n");
+	}
+
 	return EXIT_SUCCESS;
 }
 
-- 
2.32.0


  parent reply	other threads:[~2022-01-10 17:59 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-10 17:48 [PATCH 0/2] fix dumpimage for fit images Stefan Eichenberger
2022-01-10 17:48 ` [PATCH 1/2] tools/fitimage: remove redundant format check Stefan Eichenberger
2022-01-21 15:20   ` Simon Glass
2022-01-24 16:53   ` Tom Rini
2022-01-10 17:48 ` Stefan Eichenberger [this message]
2022-01-21 15:20   ` [PATCH 2/2] tools/fitimage: make sure dumpimage still works when "@" are detected Simon Glass
2022-01-24 16:53   ` Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220110174832.257300-3-eichest@gmail.com \
    --to=eichest@gmail.com \
    --cc=devel-sven@geroedel.de \
    --cc=mr.nuke.me@gmail.com \
    --cc=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.