efi_loader: variable: check a return value of uuid__str_to_bin()

The only error case is that a given UUID is in wrong format.
So just return EFI_INVALID_PARAMETER here.

Reported-by: Coverity (CID 300333)
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
AKASHI Takahiro 2020-05-08 14:51:21 +09:00 committed by Heinrich Schuchardt
parent 52d7bfe787
commit b433acbb81

View File

@ -767,7 +767,10 @@ static efi_status_t parse_uboot_variable(char *variable,
/* guid */
c = *(name - 1);
*(name - 1) = '\0'; /* guid need be null-terminated here */
uuid_str_to_bin(guid, (unsigned char *)vendor, UUID_STR_FORMAT_GUID);
if (uuid_str_to_bin(guid, (unsigned char *)vendor,
UUID_STR_FORMAT_GUID))
/* The only error would be EINVAL. */
return EFI_INVALID_PARAMETER;
*(name - 1) = c;
/* attributes */