From: Niko Mauno <[email protected]>

Before reading entire FIT image, add sanity check by testing image
header against FDT_MAGIC. This should help avoid problems in situations
where FIT is not yet available from storage device, for example when
performing initial programming of device.

Cc: Anatolij Gustschin <[email protected]>
Acked-by: Tomas Melin <[email protected]>
---
 common/splash_source.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/common/splash_source.c b/common/splash_source.c
index 867a798..30e6a0d 100644
--- a/common/splash_source.c
+++ b/common/splash_source.c
@@ -317,6 +317,11 @@ static int splash_load_fit(struct splash_location 
*location, u32 bmp_load_addr)
                return res;
 
        img_header = (struct image_header *)bmp_load_addr;
+       if (image_get_magic(img_header) != FDT_MAGIC) {
+               printf("Could not find FDT magic\n");
+               return -EINVAL;
+       }
+
        fit_size = fdt_totalsize(img_header);
 
        /* Read in entire FIT */
-- 
2.1.4

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to