[PATCH v2 07/17] android: boot: content print is not supported for v3, v4 header version

Safae Ouajih
2023-01-26T16:08:44Z

Content print is not supported for version 3 and 4 of boot image header.
Thus, only print that content when v2 is used.

Update android_print_contents() to print an error message
when trying to print boot image header version 3 or 4 content.

Signed-off-by: Safae Ouajih <souajih@baylibre.com>
---
boot/image-android.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/boot/image-android.c b/boot/image-android.c
index 9dab09a69a..a6e7a7abb0 100644
--- a/boot/image-android.c
+++ b/boot/image-android.c
@@ -481,6 +481,10 @@ bool android_image_get_dtb_by_index(ulong hdr_addr, u32 index, ulong *addr,
*/
void android_print_contents(const struct andr_boot_img_hdr_v0 *hdr)
{
+ if (hdr->header_version >= 3) {
+ printf("Content print is not supported for boot image header version > 2");
+ return;
+ }
const char * const p = IMAGE_INDENT_STRING;
/* os_version = ver << 11 | lvl */
u32 os_ver = hdr->os_version >> 11;
@@ -513,7 +517,7 @@ void android_print_contents(const struct andr_boot_img_hdr_v0 *hdr)
hdr->header_size);
}

- if (hdr->header_version >= 2) {
+ if (hdr->header_version == 2) {
printf("%sdtb size: %x\n", p, hdr->dtb_size);
printf("%sdtb addr: %llx\n", p, hdr->dtb_addr);
}
--
2.34.1