From 88625a586cf0e89284bdcdc89ee0152de0b81c8b Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Thu, 23 Aug 2012 19:07:52 +0800 Subject: [PATCH] efivars: Move EFI_VARIABLE_* attributes to efivars.h Rather than making these private to sbvarsign, move the EFI_VARIABLE attribute defintions to efivars.h Since some of these are defined by gnu-efi, we need to protect the definitions with an #ifdef. Signed-off-by: Jeremy Kerr --- src/efivars.h | 20 ++++++++++++++++++++ src/sbvarsign.c | 13 ++++++------- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/src/efivars.h b/src/efivars.h index 8782714..c7ae3e3 100644 --- a/src/efivars.h +++ b/src/efivars.h @@ -38,6 +38,26 @@ {0x4aafd29d, 0x68df, 0x49ee, \ {0x8a, 0xa9, 0x34, 0x7d, 0x37, 0x56, 0x65, 0xa7}} +#ifndef EFI_VARIABLE_NON_VOLATILE +#define EFI_VARIABLE_NON_VOLATILE 0x00000001 +#endif + +#ifndef EFI_VARIABLE_BOOTSERVICE_ACCESS +#define EFI_VARIABLE_BOOTSERVICE_ACCESS 0x00000002 +#endif + +#ifndef EFI_VARIABLE_RUNTIME_ACCESS +#define EFI_VARIABLE_RUNTIME_ACCESS 0x00000004 +#endif + +#ifndef EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS +#define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS 0x00000020 +#endif + +#ifndef EFI_VARIABLE_APPEND_WRITE +#define EFI_VARIABLE_APPEND_WRITE 0x00000040 +#endif + typedef struct { UINT32 dwLength; UINT16 wRevision; diff --git a/src/sbvarsign.c b/src/sbvarsign.c index 3fc4599..3997c96 100644 --- a/src/sbvarsign.c +++ b/src/sbvarsign.c @@ -87,16 +87,15 @@ struct attr { int value; }; +#define EFI_VAR_ATTR(n) { #n, EFI_VARIABLE_ ## n } static struct attr attrs[] = { - { "NON_VOLATILE", 0x0001 }, - { "BOOTSERVICE_ACCESS", 0x0002 }, - { "RUNTIME_ACCESS", 0x0004 }, - { "TIME_BASED_AUTHENTICATED_WRITE_ACCESS", 0x0020 }, - { "APPEND_WRITE", 0x0040 }, + EFI_VAR_ATTR(NON_VOLATILE), + EFI_VAR_ATTR(BOOTSERVICE_ACCESS), + EFI_VAR_ATTR(RUNTIME_ACCESS), + EFI_VAR_ATTR(TIME_BASED_AUTHENTICATED_WRITE_ACCESS), + EFI_VAR_ATTR(APPEND_WRITE), }; -#define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS 0x0020 - static uint32_t attr_invalid = 0xffffffffu; static const char *attr_prefix = "EFI_VARIABLE_";