|
@@ -1616,6 +1616,10 @@ static int kwbimage_verify_header(unsigned char *ptr, int image_size,
|
|
|
struct image_tool_params *params)
|
|
|
{
|
|
|
uint8_t checksum;
|
|
|
+ size_t header_size = kwbimage_header_size(ptr);
|
|
|
+
|
|
|
+ if (header_size > image_size)
|
|
|
+ return -FDT_ERR_BADSTRUCTURE;
|
|
|
|
|
|
if (!main_hdr_checksum_ok(ptr))
|
|
|
return -FDT_ERR_BADSTRUCTURE;
|