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 <[email protected]>

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 <[email protected]>

Signed-off-by: Stefan Herbrechtsmeier <[email protected]>
---

  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


Reply via email to