|
@@ -1678,9 +1678,7 @@ static int kwbimage_verify_header(unsigned char *ptr, int image_size,
|
|
|
if (checksum != ext_hdr->checksum)
|
|
|
return -FDT_ERR_BADSTRUCTURE;
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- if (image_version((void *)ptr) == 1) {
|
|
|
+ } else if (image_version((void *)ptr) == 1) {
|
|
|
struct main_hdr_v1 *mhdr = (struct main_hdr_v1 *)ptr;
|
|
|
uint32_t offset;
|
|
|
uint32_t size;
|
|
@@ -1750,6 +1748,8 @@ static int kwbimage_verify_header(unsigned char *ptr, int image_size,
|
|
|
if (image_checksum32(ptr + offset, size - 4) !=
|
|
|
*(uint32_t *)(ptr + offset + size - 4))
|
|
|
return -FDT_ERR_BADSTRUCTURE;
|
|
|
+ } else {
|
|
|
+ return -FDT_ERR_BADSTRUCTURE;
|
|
|
}
|
|
|
|
|
|
return 0;
|