1 | ## @file
|
---|
2 | # Provides security service for TPM 2.0 measured boot and Confidential Computing measure boot.
|
---|
3 | #
|
---|
4 | # Spec Compliance Info:
|
---|
5 | # "TCG PC Client Platform Firmware Profile Specification for TPM Family 2.0 Level 00 Revision 1.03 v51"
|
---|
6 | # along with
|
---|
7 | # "Errata for PC Client Specific Platform Firmware Profile Specification Version 1.0 Revision 1.03"
|
---|
8 | #
|
---|
9 | # This library instance hooks LoadImage() API to measure every image that
|
---|
10 | # is not measured in PEI phase. And, it will also measure GPT partition.
|
---|
11 | #
|
---|
12 | # Caution: This module requires additional review when modified.
|
---|
13 | # This library will have external input - PE/COFF image and GPT partition.
|
---|
14 | # This external input must be validated carefully to avoid security issues such
|
---|
15 | # as buffer overflow or integer overflow.
|
---|
16 | #
|
---|
17 | # Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
---|
18 | # SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
19 | #
|
---|
20 | ##
|
---|
21 |
|
---|
22 | [Defines]
|
---|
23 | INF_VERSION = 0x00010005
|
---|
24 | BASE_NAME = DxeTpm2MeasureBootLib
|
---|
25 | MODULE_UNI_FILE = DxeTpm2MeasureBootLib.uni
|
---|
26 | FILE_GUID = 778CE4F4-36BD-4ae7-B8F0-10B420B0D174
|
---|
27 | MODULE_TYPE = DXE_DRIVER
|
---|
28 | VERSION_STRING = 1.0
|
---|
29 | LIBRARY_CLASS = NULL|DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER UEFI_APPLICATION UEFI_DRIVER
|
---|
30 | CONSTRUCTOR = DxeTpm2MeasureBootLibConstructor
|
---|
31 |
|
---|
32 | #
|
---|
33 | # The following information is for reference only and not required by the build tools.
|
---|
34 | #
|
---|
35 | # VALID_ARCHITECTURES = IA32 X64 EBC
|
---|
36 | #
|
---|
37 |
|
---|
38 | [Sources]
|
---|
39 | DxeTpm2MeasureBootLib.c
|
---|
40 | DxeTpm2MeasureBootLibSanitization.c
|
---|
41 | DxeTpm2MeasureBootLibSanitization.h
|
---|
42 |
|
---|
43 | [Packages]
|
---|
44 | MdePkg/MdePkg.dec
|
---|
45 | MdeModulePkg/MdeModulePkg.dec
|
---|
46 | SecurityPkg/SecurityPkg.dec
|
---|
47 | CryptoPkg/CryptoPkg.dec
|
---|
48 |
|
---|
49 | [LibraryClasses]
|
---|
50 | BaseMemoryLib
|
---|
51 | SafeIntLib
|
---|
52 | DebugLib
|
---|
53 | MemoryAllocationLib
|
---|
54 | DevicePathLib
|
---|
55 | UefiBootServicesTableLib
|
---|
56 | BaseCryptLib
|
---|
57 | PeCoffLib
|
---|
58 | BaseLib
|
---|
59 | SecurityManagementLib
|
---|
60 | HobLib
|
---|
61 |
|
---|
62 | [Guids]
|
---|
63 | gMeasuredFvHobGuid ## SOMETIMES_CONSUMES ## HOB
|
---|
64 |
|
---|
65 | [Protocols]
|
---|
66 | gEfiTcg2ProtocolGuid ## SOMETIMES_CONSUMES
|
---|
67 | gEfiCcMeasurementProtocolGuid ## SOMETIMES_CONSUMES
|
---|
68 | gEfiFirmwareVolumeBlockProtocolGuid ## SOMETIMES_CONSUMES
|
---|
69 | gEfiBlockIoProtocolGuid ## SOMETIMES_CONSUMES
|
---|
70 | gEfiDiskIoProtocolGuid ## SOMETIMES_CONSUMES
|
---|