bootm: update image OS image size when decompressing
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Sun, 30 Aug 2020 09:34:12 +0000 (11:34 +0200)
committerTom Rini <trini@konsulko.com>
Fri, 11 Sep 2020 21:13:56 +0000 (17:13 -0400)
In bootm_load_os() the OS image is decompressed. In later stages of the
boot process we need the decompressed size of the image.

Update images->os.image_len after decompression.

Passing the correct size is necessary if we want to check loaded EFI
binararies for file truncation by comparing the loaded size to the header
field SizeOfImage.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
common/bootm.c

index 247b600..b337749 100644 (file)
@@ -390,6 +390,8 @@ static int bootm_load_os(bootm_headers_t *images, int boot_progress)
                bootstage_error(BOOTSTAGE_ID_DECOMP_IMAGE);
                return err;
        }
+       /* We need the decompressed image size in the next steps */
+       images->os.image_len = load_end - load;
 
        flush_cache(flush_start, ALIGN(load_end, ARCH_DMA_MINALIGN) - flush_start);