]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableSmm.inf
Update Module BaseName to avoid the same name.
[mirror_edk2.git] / SecurityPkg / VariableAuthenticated / RuntimeDxe / VariableSmm.inf
1 ## @file
2 # Component description file for SMM Authenticated Variable module.
3 #
4 # This module installs SMM variable protocol into SMM protocol database,
5 # which can be used by SMM driver, and installs SMM variable protocol
6 # into BS protocol database, which can be used to notify the SMM Runtime
7 # Dxe driver that the SMM variable service is ready.
8 # This module should be used with SMM Runtime DXE module together. The
9 # SMM Runtime DXE module would install variable arch protocol and variable
10 # write arch protocol based on SMM variable module.
11 #
12 # Caution: This module requires additional review when modified.
13 # This driver will have external input - variable data and communicate buffer in SMM mode.
14 # This external input must be validated carefully to avoid security issue like
15 # buffer overflow, integer overflow.
16 #
17 # Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
18 # This program and the accompanying materials
19 # are licensed and made available under the terms and conditions of the BSD License
20 # which accompanies this distribution. The full text of the license may be found at
21 # http://opensource.org/licenses/bsd-license.php
22 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
23 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
24 #
25 ##
26
27 [Defines]
28 INF_VERSION = 0x00010005
29 BASE_NAME = VariableAuthSmm
30 FILE_GUID = D34BDC5E-968A-40f5-A48C-E594F45AE211
31 MODULE_TYPE = DXE_SMM_DRIVER
32 VERSION_STRING = 1.0
33 PI_SPECIFICATION_VERSION = 0x0001000A
34 ENTRY_POINT = VariableServiceInitialize
35
36 #
37 # The following information is for reference only and not required by the build tools.
38 #
39 # VALID_ARCHITECTURES = IA32 X64
40 #
41
42
43 [Sources]
44 Reclaim.c
45 Variable.c
46 VariableSmm.c
47 AuthService.c
48 Variable.h
49 AuthService.h
50
51 [Packages]
52 MdePkg/MdePkg.dec
53 MdeModulePkg/MdeModulePkg.dec
54 CryptoPkg/CryptoPkg.dec
55 SecurityPkg/SecurityPkg.dec
56
57 [LibraryClasses]
58 UefiDriverEntryPoint
59 MemoryAllocationLib
60 BaseLib
61 SynchronizationLib
62 UefiLib
63 SmmServicesTableLib
64 BaseMemoryLib
65 DebugLib
66 DxeServicesTableLib
67 BaseCryptLib
68 PlatformSecureLib
69 HobLib
70
71 [Protocols]
72 gEfiSmmFirmwareVolumeBlockProtocolGuid ## SOMETIMES_CONSUMES
73 gEfiSmmVariableProtocolGuid ## ALWAYS_PRODUCES
74 gEfiSmmFaultTolerantWriteProtocolGuid ## SOMETIMES_CONSUMES
75 gEfiSmmAccess2ProtocolGuid ## ALWAYS_CONSUMES
76 gEfiSmmEndOfDxeProtocolGuid ## ALWAYS_CONSUMES
77
78 [Guids]
79 gEfiAuthenticatedVariableGuid ## PRODUCES ## Configuration Table Guid
80 gEfiGlobalVariableGuid ## PRODUCES ## Variable Guid
81 gSmmVariableWriteGuid ## PRODUCES ## SMM Variable Write Guid
82 gEfiCertTypeRsa2048Sha256Guid
83 gEfiImageSecurityDatabaseGuid
84 gEfiCertX509Guid
85 gEfiCertPkcs7Guid
86 gEfiCertRsa2048Guid
87 gEfiSecureBootEnableDisableGuid
88 gEfiCustomModeEnableGuid
89 gEfiVendorKeysNvGuid
90 gEfiSystemNvDataFvGuid ## CONSUMES
91 gEfiCertDbGuid
92 gEfiHardwareErrorVariableGuid ## SOMETIMES_CONSUMES
93 gEdkiiFaultTolerantWriteGuid ## CONSUMES
94
95 [Pcd]
96 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
97 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase
98 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64
99 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize
100 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize
101 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize
102 gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize
103
104 [FeaturePcd]
105 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics ## SOMETIME_CONSUMES (statistic the information of variable.)
106
107 [Depex]
108 TRUE
109
110