]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Uefi/UefiMultiPhase.h
1. Add Uefi231 secure boot related definitions
[mirror_edk2.git] / MdePkg / Include / Uefi / UefiMultiPhase.h
index c435b03f9cc67be0d473a1aff56fcfe1be34792b..510c841c47934c5bde58d190fe92ed213454043e 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   This includes some definitions introduced in UEFI that will be used in both PEI and DXE phases.\r
 \r
-Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>\r
 This program and the accompanying materials are licensed and made available under \r
 the terms and conditions of the BSD License that accompanies this distribution.  \r
 The full text of the license may be found at\r
@@ -120,16 +120,21 @@ typedef struct {
 ///\r
 /// Attributes of variable.\r
 /// \r
-#define EFI_VARIABLE_NON_VOLATILE                 0x00000001\r
-#define EFI_VARIABLE_BOOTSERVICE_ACCESS           0x00000002\r
-#define EFI_VARIABLE_RUNTIME_ACCESS               0x00000004\r
-#define EFI_VARIABLE_HARDWARE_ERROR_RECORD        0x00000008\r
-\r
+#define EFI_VARIABLE_NON_VOLATILE                            0x00000001\r
+#define EFI_VARIABLE_BOOTSERVICE_ACCESS                      0x00000002\r
+#define EFI_VARIABLE_RUNTIME_ACCESS                          0x00000004\r
 ///\r
 /// This attribute is identified by the mnemonic 'HR' \r
 /// elsewhere in this specification.\r
 /// \r
-#define EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS   0x00000010\r
+#define EFI_VARIABLE_HARDWARE_ERROR_RECORD                   0x00000008\r
+///\r
+/// Attributes of Authenticated Variable\r
+///\r
+#define EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS              0x00000010\r
+#define EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS   0x00000020\r
+#define EFI_VARIABLE_APPEND_WRITE                            0x00000040\r
+\r
 \r
 ///   \r
 /// AuthInfo is a WIN_CERTIFICATE using the wCertificateType\r
@@ -165,5 +170,24 @@ typedef struct {
   WIN_CERTIFICATE_UEFI_GUID   AuthInfo;\r
 } EFI_VARIABLE_AUTHENTICATION;\r
 \r
-#endif\r
+///\r
+/// When the attribute EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS is \r
+/// set, then the Data buffer shall begin with an instance of a complete (and serialized)\r
+/// EFI_VARIABLE_AUTHENTICATION_2 descriptor. The descriptor shall be followed by the new \r
+/// variable value and DataSize shall reflect the combined size of the descriptor and the new \r
+/// variable value. The authentication descriptor is not part of the variable data and is not \r
+/// returned by subsequent calls to GetVariable().\r
+///\r
+typedef struct {\r
+  ///\r
+  /// For the TimeStamp value, components Pad1, Nanosecond, TimeZone, Daylight and \r
+  /// Pad2 shall be set to 0. This means that the time shall always be expressed in GMT.\r
+  ///\r
+  EFI_TIME                    TimeStamp;\r
+  /// \r
+  /// Only a CertType of  EFI_CERT_TYPE_PKCS7_GUID is accepted.\r
+  ///\r
+  WIN_CERTIFICATE_UEFI_GUID   AuthInfo;\r
+ } EFI_VARIABLE_AUTHENTICATION_2;\r
 \r
+#endif\r