diff options
author | Simon Glass <sjg@chromium.org> | 2021-02-15 17:08:09 -0700 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2021-02-15 22:31:52 -0500 |
commit | c5819701a3de61e2ba2ef7ad0b616565b32305e5 (patch) | |
tree | 2d78afc29b784d5477102dabfc94215781126ae0 /drivers/net/fsl-mc | |
parent | d5f3aadacbc63df3b690d6fd9f0aa3f575b43356 (diff) | |
download | u-boot-c5819701a3de61e2ba2ef7ad0b616565b32305e5.tar.gz u-boot-c5819701a3de61e2ba2ef7ad0b616565b32305e5.tar.bz2 u-boot-c5819701a3de61e2ba2ef7ad0b616565b32305e5.zip |
image: Adjust the workings of fit_check_format()
At present this function does not accept a size for the FIT. This means
that it must be read from the FIT itself, introducing potential security
risk. Update the function to include a size parameter, which can be
invalid, in which case fit_check_format() calculates it.
For now no callers pass the size, but this can be updated later.
Also adjust the return value to an error code so that all the different
types of problems can be distinguished by the user.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Bruce Monroe <bruce.monroe@intel.com>
Reported-by: Arie Haenel <arie.haenel@intel.com>
Reported-by: Julien Lenoir <julien.lenoir@intel.com>
Diffstat (limited to 'drivers/net/fsl-mc')
-rw-r--r-- | drivers/net/fsl-mc/mc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/fsl-mc/mc.c b/drivers/net/fsl-mc/mc.c index c9cf6a987e..972db4cf3a 100644 --- a/drivers/net/fsl-mc/mc.c +++ b/drivers/net/fsl-mc/mc.c @@ -142,7 +142,7 @@ int parse_mc_firmware_fit_image(u64 mc_fw_addr, return -EINVAL; } - if (!fit_check_format(fit_hdr)) { + if (fit_check_format(fit_hdr, IMAGE_SIZE_INVAL)) { printf("fsl-mc: ERR: Bad firmware image (bad FIT header)\n"); return -EINVAL; } |