aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Kerr <jeremy.kerr@canonical.com>2012-08-23 19:07:52 +0800
committerJeremy Kerr <jeremy.kerr@canonical.com>2012-08-23 19:11:34 +0800
commit88625a586cf0e89284bdcdc89ee0152de0b81c8b (patch)
tree922bcc9860bffa8fe2b08b390589c8d71aa41c37
parenta7228c83072e6d819deeeca331da4942f2a6ad96 (diff)
downloadsbsigntools-88625a586cf0e89284bdcdc89ee0152de0b81c8b.tar.gz
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 <jeremy.kerr@canonical.com>
-rw-r--r--src/efivars.h20
-rw-r--r--src/sbvarsign.c13
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_";