kwbimage: Fix out of bounds access
[oweals/u-boot.git] / tools / kwbimage.c
index 3ca3b3b4a62f40e60d6d93fa70b2578803fa7ce2..26686ad30f98b8d5e2a39cff820c4a41c559681f 100644 (file)
@@ -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;