This allows using GRUB_EFI_TRUE and GRUB_EFI_FALSE with proper type and value checking. The UEFI 2.10 specification, in section 2.3.1, table 2.3, says the size of the boolean is 1 byte and may only contain the values 0 or 1. In order to have the enum be 1-byte in size instead of the default int-sized, add the packed attribute to the enum.
Signed-off-by: Glenn Washburn <developm...@efficientek.com> --- include/grub/efi/api.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/include/grub/efi/api.h b/include/grub/efi/api.h index 5934db1c992b..be7c128dfb42 100644 --- a/include/grub/efi/api.h +++ b/include/grub/efi/api.h @@ -552,7 +552,13 @@ enum grub_efi_reset_type typedef enum grub_efi_reset_type grub_efi_reset_type_t; /* Types. */ -typedef char grub_efi_boolean_t; +enum GRUB_PACKED grub_efi_boolean + { + GRUB_EFI_FALSE, + GRUB_EFI_TRUE + }; +typedef enum grub_efi_boolean grub_efi_boolean_t; + #if GRUB_CPU_SIZEOF_VOID_P == 8 typedef grub_int64_t grub_efi_intn_t; typedef grub_uint64_t grub_efi_uintn_t; -- 2.34.1 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel