[PATCH v1] mkeficapsule: fix efi_firmware_management_capsule_header data type

Schmidt, Malte malte.schmidt-oss at weidmueller.com
Mon Jun 19 11:45:49 CEST 2023


Hello Takahir,

Am 17.06.2023 um 02:33 schrieb AKASHI Takahiro:
> On Fri, Jun 16, 2023 at 10:28:05AM +0200, Stefan Herbrechtsmeier wrote:
>> From: Malte Schmidt <malte.schmidt at weidmueller.com>
>>
>> The data type of item_offset_list shall be UINT64 according to the UEFI [1]
>> specifications.
>>
>> In include/efi_api.h the correct data type is used. The bug was probably
>> never noticed because of little endianness.
> Thank you.
> Just in case, tools/eficapsule.h has the same struct definition
> because I didn't want to include U-Boot's corresponding header
> to avoid including a conflicting header file.
>
> Please fix it as well.
>
> -Takahiro Akashi
Which header should I fix additionally? In include/efi_api.h the correct
type is used, so there is nothing to fix.

Best Regards
Malte
>> [1] https://uefi.org/specs/UEFI/2.10/index.html
>>
>> Signed-off-by: Malte Schmidt <malte.schmidt at weidmueller.com>
>>
>> Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier at weidmueller.com>
>> ---
>>
>>   tools/eficapsule.h | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/eficapsule.h b/tools/eficapsule.h
>> index 753fb73313..2099a2e9b8 100644
>> --- a/tools/eficapsule.h
>> +++ b/tools/eficapsule.h
>> @@ -63,7 +63,7 @@ struct efi_firmware_management_capsule_header {
>>   	uint32_t version;
>>   	uint16_t embedded_driver_count;
>>   	uint16_t payload_item_count;
>> -	uint32_t item_offset_list[];
>> +	uint64_t item_offset_list[];
>>   } __packed;
>>   
>>   /* image_capsule_support */
>> -- 
>> 2.30.2
>>



More information about the U-Boot mailing list