aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorNiko Mauno2017-08-03 09:53:24 +0300
committerAnatolij Gustschin2017-08-29 00:20:16 +0200
commit22aa21dba4085bb8d597eeeeeee9e3328af684bb (patch)
tree9cd7f46c9216e1b3194a074052217174b7b8a5ba /common
parent8b3cec7da18645eda7f7cd0b65ee9f2dac573409 (diff)
splash_source: Verify FIT magic
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 <agust@denx.de> Acked-by: Tomas Melin <tomas.melin@vaisala.com>
Diffstat (limited to 'common')
-rw-r--r--common/splash_source.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/common/splash_source.c b/common/splash_source.c
index a21ad62f82d..e0defdebd6a 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 */