2 # Runtime DXE part corresponding to SMM authenticated variable module
4 # This module installs variable arch protocol and variable write arch protocol to provide
5 # variable service. This module need work together with SMM authenticated variable module.
7 # Caution: This module requires additional review when modified.
8 # This driver will have external input - variable data.
9 # This external input must be validated carefully to avoid security issues such as
10 # buffer overflow or integer overflow.
12 # Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
13 # This program and the accompanying materials
14 # are licensed and made available under the terms and conditions of the BSD License
15 # which accompanies this distribution. The full text of the license may be found at
16 # http://opensource.org/licenses/bsd-license.php
17 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
18 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
23 INF_VERSION = 0x00010005
24 BASE_NAME = VariableAuthSmmRuntimeDxe
25 MODULE_UNI_FILE = VariableAuthSmmRuntimeDxe.uni
26 FILE_GUID = 067E2381-7234-4798-B49C-D5FECBFF6D07
27 MODULE_TYPE = DXE_RUNTIME_DRIVER
29 ENTRY_POINT = VariableSmmRuntimeInitialize
32 # The following information is for reference only and not required by the build tools.
34 # VALID_ARCHITECTURES = IA32 X64
36 # VIRTUAL_ADDRESS_MAP_CALLBACK = VariableAddressChangeEvent
40 VariableSmmRuntimeDxe.c
45 MdeModulePkg/MdeModulePkg.dec
46 SecurityPkg/SecurityPkg.dec
51 UefiBootServicesTableLib
60 gEfiVariableWriteArchProtocolGuid ## PRODUCES
61 gEfiVariableArchProtocolGuid ## PRODUCES
62 gEfiSmmCommunicationProtocolGuid ## CONSUMES
63 gEdkiiVariableLockProtocolGuid ## PRODUCES
67 ## UNDEFINED # Used to do smm communication
68 gEfiSmmVariableProtocolGuid
71 gEfiEventVirtualAddressChangeGuid ## CONSUMES ## Event
72 gEfiEventExitBootServicesGuid ## CONSUMES ## Event
74 ## CONSUMES ## UNDEFINED # Locate protocol
75 ## CONSUMES ## UNDEFINED # Protocol notify
79 ## SOMETIMES_CONSUMES ## Variable:L"PK"
80 ## SOMETIMES_CONSUMES ## Variable:L"KEK"
81 ## SOMETIMES_CONSUMES ## Variable:L"SecureBoot"
82 gEfiGlobalVariableGuid
84 ## SOMETIMES_CONSUMES ## Variable:L"DB"
85 ## SOMETIMES_CONSUMES ## Variable:L"DBX"
86 gEfiImageSecurityDatabaseGuid
89 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize ## CONSUMES
90 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize ## CONSUMES
91 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase ## CONSUMES
94 gEfiSmmCommunicationProtocolGuid
96 [UserExtensions.TianoCore."ExtraFiles"]
97 VariableSmmRuntimeDxeExtra.uni