Message ID | 20230731085302.1049459-1-masahisa.kojima@linaro.org |
---|---|
State | Accepted |
Commit | cd87d2c61ce8e8e963de514f2c8ab0f959d6b586 |
Headers | show |
Series | efi_loader: check uuid_str_to_bin return value | expand |
On 7/31/23 10:53, Masahisa Kojima wrote: > Check the uuid_str_to_bin return value, skip the node > if the image-type-id property is wrong format. > > Addresses-Coverity-ID: 463145 ("Error handling issues") > Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> > --- > lib/efi_loader/efi_firmware.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c > index b557738370..9abb29f1df 100644 > --- a/lib/efi_loader/efi_firmware.c > +++ b/lib/efi_loader/efi_firmware.c > @@ -159,7 +159,7 @@ static void efi_firmware_get_lsv_from_dtb(u8 image_index, > const fdt32_t *val; > const char *guid_str; > int len, offset, index; > - int parent; > + int parent, ret; > > *lsv = 0; > > @@ -173,7 +173,11 @@ static void efi_firmware_get_lsv_from_dtb(u8 image_index, > guid_str = fdt_getprop(fdt, offset, "image-type-id", &len); > if (!guid_str) > continue; > - uuid_str_to_bin(guid_str, guid.b, UUID_STR_FORMAT_GUID); > + ret = uuid_str_to_bin(guid_str, guid.b, UUID_STR_FORMAT_GUID); > + if (ret < 0) { > + log_warning("Wrong image-type-id format.\n"); > + continue; > + } > > val = fdt_getprop(fdt, offset, "image-index", &len); > if (!val)
diff --git a/lib/efi_loader/efi_firmware.c b/lib/efi_loader/efi_firmware.c index b557738370..9abb29f1df 100644 --- a/lib/efi_loader/efi_firmware.c +++ b/lib/efi_loader/efi_firmware.c @@ -159,7 +159,7 @@ static void efi_firmware_get_lsv_from_dtb(u8 image_index, const fdt32_t *val; const char *guid_str; int len, offset, index; - int parent; + int parent, ret; *lsv = 0; @@ -173,7 +173,11 @@ static void efi_firmware_get_lsv_from_dtb(u8 image_index, guid_str = fdt_getprop(fdt, offset, "image-type-id", &len); if (!guid_str) continue; - uuid_str_to_bin(guid_str, guid.b, UUID_STR_FORMAT_GUID); + ret = uuid_str_to_bin(guid_str, guid.b, UUID_STR_FORMAT_GUID); + if (ret < 0) { + log_warning("Wrong image-type-id format.\n"); + continue; + } val = fdt_getprop(fdt, offset, "image-index", &len); if (!val)
Check the uuid_str_to_bin return value, skip the node if the image-type-id property is wrong format. Addresses-Coverity-ID: 463145 ("Error handling issues") Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> --- lib/efi_loader/efi_firmware.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)