MdeModulePkg[all]  0.98
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
VariableFormat.h File Reference

Data Structures

struct  VARIABLE_STORE_HEADER
 
struct  VARIABLE_HEADER
 
struct  AUTHENTICATED_VARIABLE_HEADER
 
struct  VARIABLE_ENTRY_CONSISTENCY
 
struct  _VARIABLE_INFO_ENTRY
 

Macros

#define EFI_VARIABLE_GUID   { 0xddcf3616, 0x3275, 0x4164, { 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d } }
 
#define EFI_AUTHENTICATED_VARIABLE_GUID   { 0xaaf32c78, 0x947b, 0x439a, { 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92 } }
 
#define ALIGNMENT   1
 
#define GET_PAD_SIZE(a)   (0)
 
#define HEADER_ALIGNMENT   4
 
#define HEADER_ALIGN(Header)   (((UINTN) (Header) + HEADER_ALIGNMENT - 1) & (~(HEADER_ALIGNMENT - 1)))
 
#define VARIABLE_STORE_SIGNATURE   EFI_VARIABLE_GUID
 
#define AUTHENTICATED_VARIABLE_STORE_SIGNATURE   EFI_AUTHENTICATED_VARIABLE_GUID
 
#define VARIABLE_STORE_FORMATTED   0x5a
 
#define VARIABLE_STORE_HEALTHY   0xfe
 
#define VARIABLE_DATA   0x55AA
 
#define VAR_IN_DELETED_TRANSITION   0xfe
 Variable is in obsolete transition. More...
 
#define VAR_DELETED   0xfd
 Variable is obsolete. More...
 
#define VAR_HEADER_VALID_ONLY   0x7f
 Variable header has been valid. More...
 
#define VAR_ADDED   0x3f
 Variable has been completely added. More...
 
#define VARIABLE_ATTRIBUTE_NV_BS   (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)
 
#define VARIABLE_ATTRIBUTE_BS_RT   (EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS)
 
#define VARIABLE_ATTRIBUTE_BS_RT_AT   (VARIABLE_ATTRIBUTE_BS_RT | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS)
 
#define VARIABLE_ATTRIBUTE_NV_BS_RT   (VARIABLE_ATTRIBUTE_BS_RT | EFI_VARIABLE_NON_VOLATILE)
 
#define VARIABLE_ATTRIBUTE_NV_BS_RT_HR   (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_HARDWARE_ERROR_RECORD)
 
#define VARIABLE_ATTRIBUTE_NV_BS_RT_AT   (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS)
 
#define VARIABLE_ATTRIBUTE_AT   EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS
 
#define VARIABLE_ATTRIBUTE_NV_BS_RT_HR_AT   (VARIABLE_ATTRIBUTE_NV_BS_RT_HR | VARIABLE_ATTRIBUTE_AT)
 
#define VARIABLE_ATTRIBUTE_AT_AW   (EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS | EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS)
 
#define VARIABLE_ATTRIBUTE_NV_BS_RT_AW   (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS)
 
#define VARIABLE_ATTRIBUTE_NV_BS_RT_HR_AT_AW   (VARIABLE_ATTRIBUTE_NV_BS_RT_HR | VARIABLE_ATTRIBUTE_AT_AW)
 

Typedefs

typedef struct _VARIABLE_INFO_ENTRY VARIABLE_INFO_ENTRY
 

Enumerations

enum  VARIABLE_STORE_STATUS { EfiRaw, EfiValid, EfiInvalid, EfiUnknown }
 

Variables

EFI_GUID gEfiVariableGuid
 
EFI_GUID gEfiAuthenticatedVariableGuid
 

Detailed Description

The variable data structures are related to EDK II-specific implementation of UEFI variables. VariableFormat.h defines variable data headers and variable storage region headers.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Macro Definition Documentation

#define ALIGNMENT   1

Alignment of variable name and data, according to the architecture:

  • For IA-32 and Intel(R) 64 architectures: 1.
#define AUTHENTICATED_VARIABLE_STORE_SIGNATURE   EFI_AUTHENTICATED_VARIABLE_GUID
#define EFI_AUTHENTICATED_VARIABLE_GUID   { 0xaaf32c78, 0x947b, 0x439a, { 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92 } }
#define EFI_VARIABLE_GUID   { 0xddcf3616, 0x3275, 0x4164, { 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d } }
#define GET_PAD_SIZE (   a)    (0)
#define HEADER_ALIGN (   Header)    (((UINTN) (Header) + HEADER_ALIGNMENT - 1) & (~(HEADER_ALIGNMENT - 1)))
#define HEADER_ALIGNMENT   4

Alignment of Variable Data Header in Variable Store region.

#define VAR_ADDED   0x3f

Variable has been completely added.

#define VAR_DELETED   0xfd

Variable is obsolete.

#define VAR_HEADER_VALID_ONLY   0x7f

Variable header has been valid.

#define VAR_IN_DELETED_TRANSITION   0xfe

Variable is in obsolete transition.

Variable State flags.

#define VARIABLE_ATTRIBUTE_AT   EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS
#define VARIABLE_ATTRIBUTE_AT_AW   (EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS | EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS)

EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS is deprecated and should be considered as reserved

#define VARIABLE_ATTRIBUTE_BS_RT   (EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS)
#define VARIABLE_ATTRIBUTE_BS_RT_AT   (VARIABLE_ATTRIBUTE_BS_RT | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS)
#define VARIABLE_ATTRIBUTE_NV_BS   (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS)

Variable Attribute combinations.

#define VARIABLE_ATTRIBUTE_NV_BS_RT   (VARIABLE_ATTRIBUTE_BS_RT | EFI_VARIABLE_NON_VOLATILE)
#define VARIABLE_ATTRIBUTE_NV_BS_RT_AT   (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS)
#define VARIABLE_ATTRIBUTE_NV_BS_RT_AW   (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS)
#define VARIABLE_ATTRIBUTE_NV_BS_RT_HR   (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_HARDWARE_ERROR_RECORD)
#define VARIABLE_ATTRIBUTE_NV_BS_RT_HR_AT   (VARIABLE_ATTRIBUTE_NV_BS_RT_HR | VARIABLE_ATTRIBUTE_AT)
#define VARIABLE_ATTRIBUTE_NV_BS_RT_HR_AT_AW   (VARIABLE_ATTRIBUTE_NV_BS_RT_HR | VARIABLE_ATTRIBUTE_AT_AW)
#define VARIABLE_DATA   0x55AA

Variable data start flag.

#define VARIABLE_STORE_FORMATTED   0x5a

Variable Store Header Format and State.

#define VARIABLE_STORE_HEALTHY   0xfe
#define VARIABLE_STORE_SIGNATURE   EFI_VARIABLE_GUID

Typedef Documentation

Enumeration Type Documentation

Status of Variable Store Region.

Enumerator
EfiRaw 
EfiValid 
EfiInvalid 
EfiUnknown 

Variable Documentation

EFI_GUID gEfiAuthenticatedVariableGuid
EFI_GUID gEfiVariableGuid