diff --git a/AdvLoggerPkg/AdvLoggerPkg.dsc b/AdvLoggerPkg/AdvLoggerPkg.dsc index 17ff32b8..e0a4954d 100644 --- a/AdvLoggerPkg/AdvLoggerPkg.dsc +++ b/AdvLoggerPkg/AdvLoggerPkg.dsc @@ -1,159 +1,159 @@ -## @file -# AdvLoggerPkg Package Localized Strings and Content -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - PLATFORM_NAME = AdvLogger - PLATFORM_GUID = a213366a-4c7f-4fb1-b81a-a40f330e02a9 - PLATFORM_VERSION = .10 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY = Build/AdvLoggerPkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - -[PcdsFeatureFlag] - -!include MdePkg/MdeLibs.dsc.inc - -[LibraryClasses.common] - - UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf - MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf - PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf - DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf - DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf - HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf - - SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf - - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf - DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - - SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf - DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf - - BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf - OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf - IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf - - XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf - - MmUnblockMemoryLib|MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf - - -[LibraryClasses.common.UEFI_APPLICATION] - UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf - UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf - ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf - FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf - -[LibraryClasses.X64] - RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf -!if $(TARGET) == DEBUG -!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 - #if debug is enabled provide StackCookie support lib so that we can link to /GS exports - NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf -!else - # otherwise use the null version for GCC and CLANG - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf -!endif -!endif - - SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf - AdvancedLoggerAccessLib|AdvLoggerPkg/Library/AdvancedLoggerAccessLib/AdvancedLoggerAccessLib.inf - AdvancedLoggerLib|AdvLoggerPkg/Library/AdvancedLoggerLib/Dxe/AdvancedLoggerLib.inf - AdvancedLoggerHdwPortLib|AdvLoggerPkg/Library/AdvancedLoggerHdwPortLib/AdvancedLoggerHdwPortLib.inf - AssertLib|AdvLoggerPkg/Library/AssertLib/AssertLib.inf - -[LibraryClasses.common.PEIM] - PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf - MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf - PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf - ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf - PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf - AdvancedLoggerLib|AdvLoggerPkg/Library/AdvancedLoggerLib/Pei/AdvancedLoggerLib.inf - -[LibraryClasses.common.DXE_CORE] - -[LibraryClasses.common.DXE_SMM_DRIVER] - AdvancedLoggerLib|AdvLoggerPkg/Library/AdvancedLoggerLib/Smm/AdvancedLoggerLib.inf - SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf - - -################################################################################################### -# -# Components Section - list of the modules and components that will be processed by compilation -# tools and the EDK II tools to generate PE32/PE32+/Coff image files. -# -# Note: The EDK II DSC file is not used to specify how compiled binary images get placed -# into firmware volume images. This section is just a list of modules to compile from -# source into UEFI-compliant binaries. -# It is the FDF file that contains information on combining binary files into firmware -# volume images, whose concept is beyond UEFI and is described in PI specification. -# Binary modules do not need to be listed in this section, as they should be -# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), -# Logo (Logo.bmp), and etc. -# There may also be modules listed in this section that are not required in the FDF file, -# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be -# generated for it, but the binary will not be put into any firmware volume. -# -################################################################################################### - -[Components] - AdvLoggerPkg/Library/BaseDebugLibAdvancedLogger/BaseDebugLibAdvancedLogger.inf - AdvLoggerPkg/Application/AdvancedLogDumper/AdvancedLogDumper.inf - -[Components.IA32] - AdvLoggerPkg/Library/AdvancedLoggerLib/Pei/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/Pei64/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/PeiCore/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/Sec/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/DebugAgent/Sec/AdvancedLoggerSecDebugAgent.inf - AdvLoggerPkg/Library/PeiDebugLibAdvancedLogger/PeiDebugLibAdvancedLogger.inf - -[Components.X64] - AdvLoggerPkg/AdvancedFileLogger/AdvancedFileLogger.inf - AdvLoggerPkg/AdvancedSerialLogger/Dxe/AdvancedSerialLoggerDxe.inf - AdvLoggerPkg/Library/AdvancedLoggerAccessLib/AdvancedLoggerAccessLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/Dxe/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/DxeCore/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/MmCore/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/Runtime/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/Smm/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvancedLoggerLib/SmmCore/AdvancedLoggerLib.inf - AdvLoggerPkg/Library/AdvLoggerSmmAccessLib/AdvLoggerSmmAccessLib.inf - AdvLoggerPkg/UnitTests/LineParser/LineParserTest.inf - AdvLoggerPkg/Library/AdvancedLoggerHdwPortLibNull/AdvancedLoggerHdwPortLibNull.inf - AdvLoggerPkg/Library/AdvancedLoggerHdwPortLib/AdvancedLoggerHdwPortLib.inf - AdvLoggerPkg/Library/AdvLoggerSerialPortLib/AdvLoggerSerialPortLib.inf - AdvLoggerPkg/Library/AssertLib/AssertLib.inf - AdvLoggerPkg/Library/AssertTelemetryLib/AssertLib.inf - AdvLoggerPkg/Library/AdvLoggerMmAccessLib/AdvLoggerMmAccessLib.inf - -[BuildOptions] -#force deprecated interfaces off - *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES +## @file +# AdvLoggerPkg Package Localized Strings and Content +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + PLATFORM_NAME = AdvLogger + PLATFORM_GUID = a213366a-4c7f-4fb1-b81a-a40f330e02a9 + PLATFORM_VERSION = .10 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/AdvLoggerPkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + +[PcdsFeatureFlag] + +!include MdePkg/MdeLibs.dsc.inc + +[LibraryClasses.common] + + UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf + MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf + PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf + DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf + + SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf + + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf + MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf + UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf + + SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf + DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf + OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf + IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf + + XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf + + MmUnblockMemoryLib|MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf + + +[LibraryClasses.common.UEFI_APPLICATION] + UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf + UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + +[LibraryClasses.X64] + RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf +!if $(TARGET) == DEBUG +!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 + #if debug is enabled provide StackCookie support lib so that we can link to /GS exports + NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf +!else + # otherwise use the null version for GCC and CLANG + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf +!endif +!endif + + SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf + AdvancedLoggerAccessLib|AdvLoggerPkg/Library/AdvancedLoggerAccessLib/AdvancedLoggerAccessLib.inf + AdvancedLoggerLib|AdvLoggerPkg/Library/AdvancedLoggerLib/Dxe/AdvancedLoggerLib.inf + AdvancedLoggerHdwPortLib|AdvLoggerPkg/Library/AdvancedLoggerHdwPortLib/AdvancedLoggerHdwPortLib.inf + AssertLib|AdvLoggerPkg/Library/AssertLib/AssertLib.inf + +[LibraryClasses.common.PEIM] + PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf + MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf + PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf + ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf + PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf + AdvancedLoggerLib|AdvLoggerPkg/Library/AdvancedLoggerLib/Pei/AdvancedLoggerLib.inf + +[LibraryClasses.common.DXE_CORE] + +[LibraryClasses.common.DXE_SMM_DRIVER] + AdvancedLoggerLib|AdvLoggerPkg/Library/AdvancedLoggerLib/Smm/AdvancedLoggerLib.inf + SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf + + +################################################################################################### +# +# Components Section - list of the modules and components that will be processed by compilation +# tools and the EDK II tools to generate PE32/PE32+/Coff image files. +# +# Note: The EDK II DSC file is not used to specify how compiled binary images get placed +# into firmware volume images. This section is just a list of modules to compile from +# source into UEFI-compliant binaries. +# It is the FDF file that contains information on combining binary files into firmware +# volume images, whose concept is beyond UEFI and is described in PI specification. +# Binary modules do not need to be listed in this section, as they should be +# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), +# Logo (Logo.bmp), and etc. +# There may also be modules listed in this section that are not required in the FDF file, +# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be +# generated for it, but the binary will not be put into any firmware volume. +# +################################################################################################### + +[Components] + AdvLoggerPkg/Library/BaseDebugLibAdvancedLogger/BaseDebugLibAdvancedLogger.inf + AdvLoggerPkg/Application/AdvancedLogDumper/AdvancedLogDumper.inf + +[Components.IA32] + AdvLoggerPkg/Library/AdvancedLoggerLib/Pei/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/Pei64/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/PeiCore/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/Sec/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/DebugAgent/Sec/AdvancedLoggerSecDebugAgent.inf + AdvLoggerPkg/Library/PeiDebugLibAdvancedLogger/PeiDebugLibAdvancedLogger.inf + +[Components.X64] + AdvLoggerPkg/AdvancedFileLogger/AdvancedFileLogger.inf + AdvLoggerPkg/AdvancedSerialLogger/Dxe/AdvancedSerialLoggerDxe.inf + AdvLoggerPkg/Library/AdvancedLoggerAccessLib/AdvancedLoggerAccessLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/Dxe/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/DxeCore/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/MmCore/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/Runtime/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/Smm/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvancedLoggerLib/SmmCore/AdvancedLoggerLib.inf + AdvLoggerPkg/Library/AdvLoggerSmmAccessLib/AdvLoggerSmmAccessLib.inf + AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.inf + AdvLoggerPkg/Library/AdvancedLoggerHdwPortLibNull/AdvancedLoggerHdwPortLibNull.inf + AdvLoggerPkg/Library/AdvancedLoggerHdwPortLib/AdvancedLoggerHdwPortLib.inf + AdvLoggerPkg/Library/AdvLoggerSerialPortLib/AdvLoggerSerialPortLib.inf + AdvLoggerPkg/Library/AssertLib/AssertLib.inf + AdvLoggerPkg/Library/AssertTelemetryLib/AssertLib.inf + AdvLoggerPkg/Library/AdvLoggerMmAccessLib/AdvLoggerMmAccessLib.inf + +[BuildOptions] +#force deprecated interfaces off + *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/AdvLoggerPkg/UnitTests/LineParser/LineParserTest.c b/AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.c similarity index 100% rename from AdvLoggerPkg/UnitTests/LineParser/LineParserTest.c rename to AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.c diff --git a/AdvLoggerPkg/UnitTests/LineParser/LineParserTest.inf b/AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.inf similarity index 93% rename from AdvLoggerPkg/UnitTests/LineParser/LineParserTest.inf rename to AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.inf index 4768e3c2..3e61718f 100644 --- a/AdvLoggerPkg/UnitTests/LineParser/LineParserTest.inf +++ b/AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.inf @@ -1,46 +1,46 @@ -## @file -# LineParserTestApp.inf -# -# Test application to verify the LineParser operations. -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -## - -[Defines] - INF_VERSION = 1.26 - BASE_NAME = LineParserTestApp - FILE_GUID = a329c87c-4dd2-4a56-87a9-dd9c9d35395d - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = LineParserTestAppEntry - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 AARCH64 -# - -[Sources] - LineParserTest.c - -[Packages] - MdePkg/MdePkg.dec - AdvLoggerPkg/AdvLoggerPkg.dec - -[Protocols] - - -[LibraryClasses] - AdvancedLoggerAccessLib - BaseLib - BaseMemoryLib - DebugLib - PrintLib - TimerLib - UefiApplicationEntryPoint - UefiLib - UnitTestLib - -[Guids] +## @file +# LineParserTestApp.inf +# +# Test application to verify the LineParser operations. +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + INF_VERSION = 1.26 + BASE_NAME = LineParserTestApp + FILE_GUID = a329c87c-4dd2-4a56-87a9-dd9c9d35395d + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = LineParserTestAppEntry + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 AARCH64 +# + +[Sources] + LineParserTestApp.c + +[Packages] + MdePkg/MdePkg.dec + AdvLoggerPkg/AdvLoggerPkg.dec + +[Protocols] + + +[LibraryClasses] + AdvancedLoggerAccessLib + BaseLib + BaseMemoryLib + DebugLib + PrintLib + TimerLib + UefiApplicationEntryPoint + UefiLib + UnitTestLib + +[Guids] diff --git a/DfciPkg/UnitTests/DeviceIdTest/DeviceIdTest.c b/DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.c similarity index 100% rename from DfciPkg/UnitTests/DeviceIdTest/DeviceIdTest.c rename to DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.c diff --git a/DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.inf b/DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.inf index 52589141..857896cf 100644 --- a/DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.inf +++ b/DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.inf @@ -1,47 +1,47 @@ -## @file -# DeviceIdTestApp.inf -# -# Test application to verify DeviceId strings are acceptable to Dfci. -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -## - -[Defines] - INF_VERSION = 0x00010006 - BASE_NAME = DeviceIdTestApp - FILE_GUID = e3dd9528-cee0-4375-995d-abd4b6ca314c - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = DeviceIdTestAppEntry - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 ARM AARCH64 -# - -[Sources] - DeviceIdTest.c - -[Packages] - MdePkg/MdePkg.dec - DfciPkg/DfciPkg.dec - -[Protocols] - - -[LibraryClasses] - BaseLib - BaseMemoryLib - DebugLib - DfciDeviceIdSupportLib - PrintLib - UefiApplicationEntryPoint - UefiLib - UnitTestLib - - -[Guids] - +## @file +# DeviceIdTestApp.inf +# +# Test application to verify DeviceId strings are acceptable to Dfci. +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + INF_VERSION = 0x00010006 + BASE_NAME = DeviceIdTestApp + FILE_GUID = e3dd9528-cee0-4375-995d-abd4b6ca314c + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = DeviceIdTestAppEntry + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 ARM AARCH64 +# + +[Sources] + DeviceIdTestApp.c + +[Packages] + MdePkg/MdePkg.dec + DfciPkg/DfciPkg.dec + +[Protocols] + + +[LibraryClasses] + BaseLib + BaseMemoryLib + DebugLib + DfciDeviceIdSupportLib + PrintLib + UefiApplicationEntryPoint + UefiLib + UnitTestLib + + +[Guids] + diff --git a/MfciPkg/MfciPkg.dsc b/MfciPkg/MfciPkg.dsc index 27657c4e..961c587d 100644 --- a/MfciPkg/MfciPkg.dsc +++ b/MfciPkg/MfciPkg.dsc @@ -1,174 +1,174 @@ -## @file -# CI DSC for the Manufacturer Firmware Configuration Interface (MFCI) Package -# -# Copyright (c) Microsoft Corporation -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -################################################################################ -[Defines] - PLATFORM_NAME = MfciPkg - PLATFORM_GUID = 24621B71-FD5A-4724-87D2-AE9044FB6BC2 - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY = Build/MfciPkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - - DEFINE MFCI_POLICY_EKU_TEST = "1.3.6.1.4.1.311.45.255.255" - DEFINE MFCI_POLICY_EKU_RETAIL = "1.3.6.1.4.1.311.79.8.1" - -[PcdsFixedAtBuild] - gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x3f - gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80080246 - gEfiMdePkgTokenSpaceGuid.PcdFixedDebugPrintErrorLevel|0x80080246 - - # the unit test uses the test certificate that will also be used for testing end-to-end scenarios - !include MfciPkg/Private/Certs/CA-test.dsc.inc - gMfciPkgTokenSpaceGuid.PcdMfciPkcs7RequiredLeafEKU |$(MFCI_POLICY_EKU_TEST) # use the test version - # TODO: add the production certificate and EKU if/when we have test cases that use them - -################################################################################ -# -# Library Class section - list of all Library Classes needed by this Platform. -# -################################################################################ -!include MdePkg/MdeLibs.dsc.inc - -[LibraryClasses] - # - # Entry Point Libraries - # - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf - # - # Common Libraries - # - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - -[LibraryClasses.X64] - RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf - Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf - Tpm2DebugLib|SecurityPkg/Library/Tpm2DebugLib/Tpm2DebugLibNull.inf - SecureBootVariableLib|SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.inf - PlatformPKProtectionLib|SecurityPkg/Library/PlatformPKProtectionLibVarPolicy/PlatformPKProtectionLibVarPolicy.inf - MfciRetrievePolicyLib|MfciPkg/Library/MfciRetrievePolicyLibNull/MfciRetrievePolicyLibNull.inf - -!if $(TARGET) == DEBUG -!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 - #if debug is enabled provide StackCookie support lib so that we can link to /GS exports - NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf -!else - # otherwise use the null version for GCC and CLANG - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf -!endif -!endif - -[LibraryClasses] - MfciPolicyParsingLib|MfciPkg/Private/Library/MfciPolicyParsingLibNull/MfciPolicyParsingLibNull.inf - MfciDeviceIdSupportLib|MfciPkg/Library/MfciDeviceIdSupportLibNull/MfciDeviceIdSupportLibNull.inf - VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf - ResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf - ResetUtilityLib|MdeModulePkg/Library/ResetUtilityLib/ResetUtilityLib.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf - #DebugLib|MdePkg/Library/UefiDebugLibDebugPortProtocol/UefiDebugLibDebugPortProtocol.inf - DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf - OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf - HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf - SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf - IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf - SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf - FltUsedLib|MdePkg/Library/FltUsedLib/FltUsedLib.inf - - # MsWheaEarlyStorageLib|MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf - # CheckHwErrRecHeaderLib|MsWheaPkg/Library/CheckHwErrRecHeaderLib/CheckHwErrRecHeaderLib.inf - # MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf - -[LibraryClasses.common.PEIM] - PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf - PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf - PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf - HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf - MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf - ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf - -!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 or $(TOOL_CHAIN_TAG) == VS2022 -[LibraryClasses.IA32] - NULL|MdePkg/Library/VsIntrinsicLib/VsIntrinsicLib.inf -!endif - -# The following are for the MFCI Policy Parsing Unit Tests -[LibraryClasses.common.UEFI_APPLICATION] - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf - UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf - UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf - XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf - FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf - PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf - PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf - DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf - DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf - MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf - DebugLib|MdePkg/Library/UefiDebugLibDebugPortProtocol/UefiDebugLibDebugPortProtocol.inf - - MfciPolicyParsingLib|MfciPkg/Private/Library/MfciPolicyParsingLib/MfciPolicyParsingLib.inf - - IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf - OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf - BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf - RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf - - - -################################################################################ -# -# Components section - list of all Components needed by this Platform. -# -################################################################################ -[Components] - # MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf - MfciPkg/Private/Library/MfciPolicyParsingLibNull/MfciPolicyParsingLibNull.inf - MfciPkg/Private/Library/MfciPolicyParsingLib/MfciPolicyParsingLib.inf - MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTest.inf - -[Components.IA32] - # MsWheaPkg/MsWheaReport/Pei/MsWheaReportPei.inf - MfciPkg/MfciPei/MfciPei.inf - -[Components.X64] - # MsWheaPkg/HwErrBert/HwErrBert.inf - MfciPkg/MfciDxe/MfciDxe.inf - MfciPkg/Library/MfciRetrievePolicyLibNull/MfciRetrievePolicyLibNull.inf - MfciPkg/Library/MfciRetrievePolicyLibViaHob/MfciRetrievePolicyLibViaHob.inf - MfciPkg/Library/MfciRetrievePolicyLibViaVariable/MfciRetrievePolicyLibViaVariable.inf - MfciPkg/Library/MfciDeviceIdSupportLibNull/MfciDeviceIdSupportLibNull.inf - MfciPkg/Library/MfciDeviceIdSupportLibSmbios/MfciDeviceIdSupportLibSmbios.inf - -[Components.AARCH64] - MfciPkg/MfciDxe/MfciDxe.inf - MfciPkg/Library/MfciRetrievePolicyLibNull/MfciRetrievePolicyLibNull.inf - MfciPkg/Library/MfciRetrievePolicyLibViaHob/MfciRetrievePolicyLibViaHob.inf - MfciPkg/Library/MfciRetrievePolicyLibViaVariable/MfciRetrievePolicyLibViaVariable.inf - MfciPkg/Library/MfciDeviceIdSupportLibNull/MfciDeviceIdSupportLibNull.inf - MfciPkg/Library/MfciDeviceIdSupportLibSmbios/MfciDeviceIdSupportLibSmbios.inf - -[BuildOptions] +## @file +# CI DSC for the Manufacturer Firmware Configuration Interface (MFCI) Package +# +# Copyright (c) Microsoft Corporation +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +################################################################################ +[Defines] + PLATFORM_NAME = MfciPkg + PLATFORM_GUID = 24621B71-FD5A-4724-87D2-AE9044FB6BC2 + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/MfciPkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + + DEFINE MFCI_POLICY_EKU_TEST = "1.3.6.1.4.1.311.45.255.255" + DEFINE MFCI_POLICY_EKU_RETAIL = "1.3.6.1.4.1.311.79.8.1" + +[PcdsFixedAtBuild] + gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x3f + gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80080246 + gEfiMdePkgTokenSpaceGuid.PcdFixedDebugPrintErrorLevel|0x80080246 + + # the unit test uses the test certificate that will also be used for testing end-to-end scenarios + !include MfciPkg/Private/Certs/CA-test.dsc.inc + gMfciPkgTokenSpaceGuid.PcdMfciPkcs7RequiredLeafEKU |$(MFCI_POLICY_EKU_TEST) # use the test version + # TODO: add the production certificate and EKU if/when we have test cases that use them + +################################################################################ +# +# Library Class section - list of all Library Classes needed by this Platform. +# +################################################################################ +!include MdePkg/MdeLibs.dsc.inc + +[LibraryClasses] + # + # Entry Point Libraries + # + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + # + # Common Libraries + # + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf + +[LibraryClasses.X64] + RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf + Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf + Tpm2DebugLib|SecurityPkg/Library/Tpm2DebugLib/Tpm2DebugLibNull.inf + SecureBootVariableLib|SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.inf + PlatformPKProtectionLib|SecurityPkg/Library/PlatformPKProtectionLibVarPolicy/PlatformPKProtectionLibVarPolicy.inf + MfciRetrievePolicyLib|MfciPkg/Library/MfciRetrievePolicyLibNull/MfciRetrievePolicyLibNull.inf + +!if $(TARGET) == DEBUG +!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 + #if debug is enabled provide StackCookie support lib so that we can link to /GS exports + NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf +!else + # otherwise use the null version for GCC and CLANG + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf +!endif +!endif + +[LibraryClasses] + MfciPolicyParsingLib|MfciPkg/Private/Library/MfciPolicyParsingLibNull/MfciPolicyParsingLibNull.inf + MfciDeviceIdSupportLib|MfciPkg/Library/MfciDeviceIdSupportLibNull/MfciDeviceIdSupportLibNull.inf + VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf + ResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf + ResetUtilityLib|MdeModulePkg/Library/ResetUtilityLib/ResetUtilityLib.inf + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + #DebugLib|MdePkg/Library/UefiDebugLibDebugPortProtocol/UefiDebugLibDebugPortProtocol.inf + DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf + OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf + HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf + SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf + SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf + FltUsedLib|MdePkg/Library/FltUsedLib/FltUsedLib.inf + + # MsWheaEarlyStorageLib|MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf + # CheckHwErrRecHeaderLib|MsWheaPkg/Library/CheckHwErrRecHeaderLib/CheckHwErrRecHeaderLib.inf + # MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf + +[LibraryClasses.common.PEIM] + PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf + PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf + PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf + HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf + MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf + ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf + +!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 or $(TOOL_CHAIN_TAG) == VS2022 +[LibraryClasses.IA32] + NULL|MdePkg/Library/VsIntrinsicLib/VsIntrinsicLib.inf +!endif + +# The following are for the MFCI Policy Parsing Unit Tests +[LibraryClasses.common.UEFI_APPLICATION] + UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf + UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf + UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf + UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf + XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf + PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf + PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf + DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf + MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf + DebugLib|MdePkg/Library/UefiDebugLibDebugPortProtocol/UefiDebugLibDebugPortProtocol.inf + + MfciPolicyParsingLib|MfciPkg/Private/Library/MfciPolicyParsingLib/MfciPolicyParsingLib.inf + + IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf + OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf + RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf + + + +################################################################################ +# +# Components section - list of all Components needed by this Platform. +# +################################################################################ +[Components] + # MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf + MfciPkg/Private/Library/MfciPolicyParsingLibNull/MfciPolicyParsingLibNull.inf + MfciPkg/Private/Library/MfciPolicyParsingLib/MfciPolicyParsingLib.inf + MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTestApp.inf + +[Components.IA32] + # MsWheaPkg/MsWheaReport/Pei/MsWheaReportPei.inf + MfciPkg/MfciPei/MfciPei.inf + +[Components.X64] + # MsWheaPkg/HwErrBert/HwErrBert.inf + MfciPkg/MfciDxe/MfciDxe.inf + MfciPkg/Library/MfciRetrievePolicyLibNull/MfciRetrievePolicyLibNull.inf + MfciPkg/Library/MfciRetrievePolicyLibViaHob/MfciRetrievePolicyLibViaHob.inf + MfciPkg/Library/MfciRetrievePolicyLibViaVariable/MfciRetrievePolicyLibViaVariable.inf + MfciPkg/Library/MfciDeviceIdSupportLibNull/MfciDeviceIdSupportLibNull.inf + MfciPkg/Library/MfciDeviceIdSupportLibSmbios/MfciDeviceIdSupportLibSmbios.inf + +[Components.AARCH64] + MfciPkg/MfciDxe/MfciDxe.inf + MfciPkg/Library/MfciRetrievePolicyLibNull/MfciRetrievePolicyLibNull.inf + MfciPkg/Library/MfciRetrievePolicyLibViaHob/MfciRetrievePolicyLibViaHob.inf + MfciPkg/Library/MfciRetrievePolicyLibViaVariable/MfciRetrievePolicyLibViaVariable.inf + MfciPkg/Library/MfciDeviceIdSupportLibNull/MfciDeviceIdSupportLibNull.inf + MfciPkg/Library/MfciDeviceIdSupportLibSmbios/MfciDeviceIdSupportLibSmbios.inf + +[BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES \ No newline at end of file diff --git a/MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTest.c b/MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTestApp.c similarity index 100% rename from MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTest.c rename to MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTestApp.c diff --git a/MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTest.inf b/MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTestApp.inf similarity index 84% rename from MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTest.inf rename to MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTestApp.inf index 0bacf706..9e0bf7df 100644 --- a/MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTest.inf +++ b/MfciPkg/UnitTests/MfciPolicyParsingUnitTest/MfciPolicyParsingUnitTestApp.inf @@ -1,40 +1,40 @@ -## @file -# Unit tests of the MfciPolicyParsingLib of the MfciPkg -# -# Copyright (c) Microsoft Corporation -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - INF_VERSION = 0x00010017 - BASE_NAME = MfciPolicyParsingLibUnitTest - FILE_GUID = B0F19A87-DA19-44E9-A63C-72D3D9A56614 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = EntryPoint - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 AARCH64 -# - -[Sources] - MfciPolicyParsingUnitTest.c - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - MfciPkg/MfciPkg.dec - -[Pcd] - gMfciPkgTokenSpaceGuid.PcdMfciPkcs7CertBufferXdr ## CONSUMES - gMfciPkgTokenSpaceGuid.PcdMfciPkcs7RequiredLeafEKU ## CONSUMES - -[LibraryClasses] - BaseLib - BaseMemoryLib - DebugLib - UefiApplicationEntryPoint - UnitTestLib +## @file +# Unit tests of the MfciPolicyParsingLib of the MfciPkg +# +# Copyright (c) Microsoft Corporation +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + INF_VERSION = 0x00010017 + BASE_NAME = MfciPolicyParsingLibUnitTestApp + FILE_GUID = B0F19A87-DA19-44E9-A63C-72D3D9A56614 + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = EntryPoint + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 AARCH64 +# + +[Sources] + MfciPolicyParsingUnitTestApp.c + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + MfciPkg/MfciPkg.dec + +[Pcd] + gMfciPkgTokenSpaceGuid.PcdMfciPkcs7CertBufferXdr ## CONSUMES + gMfciPkgTokenSpaceGuid.PcdMfciPkcs7RequiredLeafEKU ## CONSUMES + +[LibraryClasses] + BaseLib + BaseMemoryLib + DebugLib + UefiApplicationEntryPoint + UnitTestLib MfciPolicyParsingLib \ No newline at end of file diff --git a/MsCorePkg/Docs/ReadMe.md b/MsCorePkg/Docs/ReadMe.md index 0c5fd5a8..2fb7f3ea 100644 --- a/MsCorePkg/Docs/ReadMe.md +++ b/MsCorePkg/Docs/ReadMe.md @@ -1,55 +1,55 @@ -# MS Core Package - -## About - -This package has shared drivers and libraries that are silicon and platform independent. - -## Modules - -| Modules | Link to Documentation | -| --- | --- | -| **AcpiRGRT:** | [Regulatory Graphics Resource Table](../AcpiRGRT/feature_acpi_rgrt.md) | -| **CheckHardwareConnected:** | [Require Devices Connected](../CheckHardwareConnected/readme.md) | -| **DebugFileLoggerII:** | [Uefi Log to File](../DebugFileLoggerII/README.md) | -| **GuidedSectionExtractPeim:** | [Pei version without decompression](../Core/GuidedSectionExtractPeim/ReadMe.md) | -| **IncompatiblePciDevices** | [Incompatible Pci Devices](../IncompatiblePciDevices/ReadMe.md) | -| **No Option Roms Allowed** | [NoOptionRomsAllowed](../IncompatiblePciDevices/NoOptionRomsAllowed/ReadMe.md) | -| **MuCryptoDxe** | [MuCryptoDxe](../MuCryptoDxe/Readme.md) | -| **MuVarPolicyFoundationDxe** | [MuVarPolicyFoundationDxe](../MuVarPolicyFoundationDxe/Feature_MuVarPolicyFoundationDxe_Readme.md) | - -## Libraries - -| Libraries | Link to Documentation | -| --- | --- | -| **DebugPortPei** | [DebugPortPei](../Library/DebugPortPei/ReadMe.md) | -| **DebugPortProtocolInstallLib** | [DebugPortProtocolInstallLib](../Library/DebugPortProtocolInstallLib/ReadMe.md) | -| **DeviceBootManagerLibNull** | [DeviceBootManagerLibNull](../Library/DeviceBootManagerLibNull/ReadMe.md) | -| **DeviceSpecificBusInfoLibNull** | [DeviceSpecificBusInfoLibNull](../Library/DeviceSpecificBusInfoLibNull/ReadMe.md) | -| **DxeDebugLibRouter** | [DxeDebugLibRouter](../Library/DxeDebugLibRouter/ReadMe.md) | -| **JsonLiteParser** | [JsonLiteParser](../Library/JsonLiteParser/ReadMe.md) | -| **MathLib** | [MathLib](../MathLib/Library/ReadMe.md) | -| **MemoryTypeInformationChangeLib** | [MemoryTypeInformationChangeLib](../Library/MemoryTypeInformationChangeLib/ReadMe.md) | -| **PasswordStoreLibNull** | [PasswordStoreLibNull](../Library/PasswordStoreLibNull/ReadMe.md) | -| **PeiDebugLib** | [PeiDebugLib](../Library/PeiDebugLib/ReadMe.md) | -| **PlatformBootManagerLib** | [PlatformBootManagerLib](../Library/PlatformBootManagerLib/ReadMe.md) | -| **TpmSgNvIndexLib** | [TpmSgNvIndexLib](../Library/TpmSgNvIndexLib/ReadMe.md) | -| **MemoryProtectionExceptionLib** | [MemoryProtectionExceptionLib](../Library/MemoryProtectionExceptionLibCmos/Readme.md) | -| **MemoryProtectionExceptionHandlerLib** | [MemoryProtectionExceptionHandlerLib](../Library/MemoryProtectionExceptionHandlerLib/Readme.md) | - -## Testing - -There are UEFI shell application based unit tests for some libraries. -These tests attempt to verify basic functionality of public interfaces. -Check the **UntTests** folder at the root of the package. - -| Library Tests | Link to Documentation | -| --- | --- | -| **Json Test:** | [Json Test](..\UnitTests/JsonTest/ReadMe.md) | -| **MathLib UnitTests:** | [MathLib UnitTests](..\UnitTests/MathLibUnitTests/ReadMe.md) | - ---- - -## Copyright - -Copyright (C) Microsoft Corporation. All rights reserved. -SPDX-License-Identifier: BSD-2-Clause-Patent +# MS Core Package + +## About + +This package has shared drivers and libraries that are silicon and platform independent. + +## Modules + +| Modules | Link to Documentation | +| --- | --- | +| **AcpiRGRT:** | [Regulatory Graphics Resource Table](../AcpiRGRT/feature_acpi_rgrt.md) | +| **CheckHardwareConnected:** | [Require Devices Connected](../CheckHardwareConnected/readme.md) | +| **DebugFileLoggerII:** | [Uefi Log to File](../DebugFileLoggerII/README.md) | +| **GuidedSectionExtractPeim:** | [Pei version without decompression](../Core/GuidedSectionExtractPeim/ReadMe.md) | +| **IncompatiblePciDevices** | [Incompatible Pci Devices](../IncompatiblePciDevices/ReadMe.md) | +| **No Option Roms Allowed** | [NoOptionRomsAllowed](../IncompatiblePciDevices/NoOptionRomsAllowed/ReadMe.md) | +| **MuCryptoDxe** | [MuCryptoDxe](../MuCryptoDxe/Readme.md) | +| **MuVarPolicyFoundationDxe** | [MuVarPolicyFoundationDxe](../MuVarPolicyFoundationDxe/Feature_MuVarPolicyFoundationDxe_Readme.md) | + +## Libraries + +| Libraries | Link to Documentation | +| --- | --- | +| **DebugPortPei** | [DebugPortPei](../Library/DebugPortPei/ReadMe.md) | +| **DebugPortProtocolInstallLib** | [DebugPortProtocolInstallLib](../Library/DebugPortProtocolInstallLib/ReadMe.md) | +| **DeviceBootManagerLibNull** | [DeviceBootManagerLibNull](../Library/DeviceBootManagerLibNull/ReadMe.md) | +| **DeviceSpecificBusInfoLibNull** | [DeviceSpecificBusInfoLibNull](../Library/DeviceSpecificBusInfoLibNull/ReadMe.md) | +| **DxeDebugLibRouter** | [DxeDebugLibRouter](../Library/DxeDebugLibRouter/ReadMe.md) | +| **JsonLiteParser** | [JsonLiteParser](../Library/JsonLiteParser/ReadMe.md) | +| **MathLib** | [MathLib](../MathLib/Library/ReadMe.md) | +| **MemoryTypeInformationChangeLib** | [MemoryTypeInformationChangeLib](../Library/MemoryTypeInformationChangeLib/ReadMe.md) | +| **PasswordStoreLibNull** | [PasswordStoreLibNull](../Library/PasswordStoreLibNull/ReadMe.md) | +| **PeiDebugLib** | [PeiDebugLib](../Library/PeiDebugLib/ReadMe.md) | +| **PlatformBootManagerLib** | [PlatformBootManagerLib](../Library/PlatformBootManagerLib/ReadMe.md) | +| **TpmSgNvIndexLib** | [TpmSgNvIndexLib](../Library/TpmSgNvIndexLib/ReadMe.md) | +| **MemoryProtectionExceptionLib** | [MemoryProtectionExceptionLib](../Library/MemoryProtectionExceptionLibCmos/Readme.md) | +| **MemoryProtectionExceptionHandlerLib** | [MemoryProtectionExceptionHandlerLib](../Library/MemoryProtectionExceptionHandlerLib/Readme.md) | + +## Testing + +There are UEFI shell application based unit tests for some libraries. +These tests attempt to verify basic functionality of public interfaces. +Check the **UntTests** folder at the root of the package. + +| Library Tests | Link to Documentation | +| --- | --- | +| **Json Test:** | [Json Test](..\UnitTests/JsonTest/ReadMe.md) | +| **MathLib UnitTests:** | [MathLib UnitTests](..\UnitTests/MathLibUnitTest/ReadMe.md) | + +--- + +## Copyright + +Copyright (C) Microsoft Corporation. All rights reserved. +SPDX-License-Identifier: BSD-2-Clause-Patent diff --git a/MsCorePkg/MsCorePkg.dsc b/MsCorePkg/MsCorePkg.dsc index 4e65e1f7..9fbb43ec 100644 --- a/MsCorePkg/MsCorePkg.dsc +++ b/MsCorePkg/MsCorePkg.dsc @@ -1,224 +1,224 @@ -## @file -# MsCore Package Localized Strings and Content -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - PLATFORM_NAME = MsCore - PLATFORM_GUID = 25CFE603-202B-4297-A63A-00B534A8CC75 - PLATFORM_VERSION = .10 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY = Build/MsCorePkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - -[PcdsFeatureFlag] - - -[PcdsFixedAtBuild] - -!include MdePkg/MdeLibs.dsc.inc - -[LibraryClasses.common] - UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf - MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf - PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf - DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf - DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf - HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf - ResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf - MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf - DeviceSpecificBusInfoLib|MsCorePkg/Library/DeviceSpecificBusInfoLibNull/DeviceSpecificBusInfoLibNull.inf - MemoryProtectionExceptionLib|MsCorePkg/Library/BaseMemoryProtectionExceptionLibNull/BaseMemoryProtectionExceptionLibNull.inf - - SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf - - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf - DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf - GuidedSectionExtract|MsCorePkg/Core/GuidedSectionExtractPeim/GuidedSectionExtract.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf - ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf - LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf - VmgExitLib|UefiCpuPkg/Library/VmgExitLibNull/VmgExitLibNull.inf - UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf - - DeviceBootManagerLib|MsCorePkg/Library/DeviceBootManagerLibNull/DeviceBootManagerLibNull.inf - PlatformBootManagerLib|MsCorePkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf - MathLib|MsCorePkg/Library/MathLib/MathLib.inf - - SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf - DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf - - BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf - OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf - IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf - JsonLiteParserLib|MsCorePkg/Library/JsonLiteParser/JsonLiteParser.inf - FltUsedLib|MdePkg/Library/FltUsedLib/FltUsedLib.inf - MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf - SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf - - RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf - XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf - - Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf - Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf - Tpm2DebugLib|SecurityPkg/Library/Tpm2DebugLib/Tpm2DebugLibNull.inf - Hash2CryptoLib|SecurityPkg/Library/BaseHash2CryptoLibNull/BaseHash2CryptoLibNull.inf - - IsCapsuleSupportedLib|MsCorePkg/Library/BaseIsCapsuleSupportedLibNull/BaseIsCapsuleSupportedLibNull.inf - CapsulePersistenceLib|MsCorePkg/Library/BaseCapsulePersistenceLibNull/BaseCapsulePersistenceLibNull.inf - QueueLib|MsCorePkg/Library/BaseQueueLibNull/BaseQueueLibNull.inf - -[LibraryClasses.common.UEFI_APPLICATION] - UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf - UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf - ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf - FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf - -[LibraryClasses.common.DXE_CORE, LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.UEFI_APPLICATION] - CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf - -[LibraryClasses.common.SEC] - CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf - -[LibraryClasses.X64] -!if $(TARGET) == DEBUG -!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 - #if debug is enabled provide StackCookie support lib so that we can link to /GS exports - NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf -!else - # otherwise use the null version for GCC and CLANG - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf -!endif -!endif - -[LibraryClasses.common.PEIM] - PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf - MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf - PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf - ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf - PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf - HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf - BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf - CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf - -!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 or $(TOOL_CHAIN_TAG) == VS2022 -[LibraryClasses.IA32] - NULL|MdePkg/Library/VsIntrinsicLib/VsIntrinsicLib.inf -!endif - -[LibraryClasses.common.DXE_CORE] - ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf - HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf - -[LibraryClasses.common.DXE_SMM_DRIVER] - SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf - BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf - MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf - CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf - -[LibraryClasses.common.MM_STANDALONE] - MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf - StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf - - -################################################################################################### -# -# Components Section - list of the modules and components that will be processed by compilation -# tools and the EDK II tools to generate PE32/PE32+/Coff image files. -# -# Note: The EDK II DSC file is not used to specify how compiled binary images get placed -# into firmware volume images. This section is just a list of modules to compile from -# source into UEFI-compliant binaries. -# It is the FDF file that contains information on combining binary files into firmware -# volume images, whose concept is beyond UEFI and is described in PI specification. -# Binary modules do not need to be listed in this section, as they should be -# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), -# Logo (Logo.bmp), and etc. -# There may also be modules listed in this section that are not required in the FDF file, -# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be -# generated for it, but the binary will not be put into any firmware volume. -# -################################################################################################### - -[Components] - MsCorePkg/Library/MathLib/MathLib.inf - MsCorePkg/Library/MemoryTypeInformationChangeLib/MemoryTypeInformationChangeLib.inf - MsCorePkg/Library/TpmSgNvIndexLib/TpmSgNvIndexLib.inf - MsCorePkg/MuCryptoDxe/MuCryptoDxe.inf - MsCorePkg/MuVarPolicyFoundationDxe/MuVarPolicyFoundationDxe.inf - MsCorePkg/AcpiRGRT/AcpiRgrt.inf - MsCorePkg/Library/BaseMemoryProtectionExceptionLibNull/BaseMemoryProtectionExceptionLibNull.inf - MsCorePkg/Library/MemoryProtectionExceptionLibCmos/MemoryProtectionExceptionLibCmos.inf - MsCorePkg/Library/MemoryProtectionExceptionHandlerLib/MemoryProtectionExceptionHandlerLib.inf - MsCorePkg/Library/DxeQueueUefiVariableLib/DxeQueueUefiVariableLib.inf - MsCorePkg/Library/BaseQueueLibNull/BaseQueueLibNull.inf - MsCorePkg/Library/DxeCapsulePersistenceLib/DxeCapsulePersistenceLib.inf - MsCorePkg/Library/BaseCapsulePersistenceLibNull/BaseCapsulePersistenceLibNull.inf - MsCorePkg/Library/DxeIsCapsuleSupportedLib/DxeIsCapsuleSupportedLib.inf - MsCorePkg/Library/BaseIsCapsuleSupportedLibNull/BaseIsCapsuleSupportedLibNull.inf - MsCorePkg/Library/SecureBootKeyStoreLibNull/SecureBootKeyStoreLibNull.inf - MsCorePkg/Library/MuSecureBootKeySelectorLib/MuSecureBootKeySelectorLib.inf - -[Components.IA32] - MsCorePkg/Core/GuidedSectionExtractPeim/GuidedSectionExtract.inf - MsCorePkg/Universal/StatusCodeHandler/Serial/Pei/SerialStatusCodeHandlerPei.inf - MsCorePkg/Library/DebugPortPei/DebugPortPei.inf - MsCorePkg/Library/PeiDebugLib/PeiDebugLib.inf - MsCorePkg/DebugFileLoggerII/Pei/DebugFileLoggerPei.inf - MsCorePkg/CapsuleServicePei/CapsuleServicePei.inf - -[Components.X64] - MsCorePkg/Library/DeviceBootManagerLibNull/DeviceBootManagerLibNull.inf - MsCorePkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf - MsCorePkg/Library/DxeDebugLibRouter/DxeDebugLibRouter.inf - MsCorePkg/Library/DebugPortProtocolInstallLib/DebugPortProtocolInstallLib.inf - MsCorePkg/Universal/StatusCodeHandler/Serial/Dxe/SerialStatusCodeHandlerDxe.inf - MsCorePkg/Universal/StatusCodeHandler/Serial/Smm/SerialStatusCodeHandlerSmm.inf - MsCorePkg/Universal/StatusCodeHandler/Serial/Smm/SerialStatusCodeHandlerStandaloneMm.inf - MsCorePkg/IncompatiblePciDevices/NoOptionRomsAllowed/NoOptionRomsAllowed.inf - MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTest.inf - MsCorePkg/Library/JsonLiteParser/JsonLiteParser.inf - MsCorePkg/UnitTests/JsonTest/JsonTestApp.inf - MsCorePkg/Library/DeviceSpecificBusInfoLibNull/DeviceSpecificBusInfoLibNull.inf - MsCorePkg/CheckHardwareConnected/CheckHardwareConnected.inf - MsCorePkg/Library/PasswordStoreLibNull/PasswordStoreLibNull.inf - MsCorePkg/DebugFileLoggerII/Dxe/DebugFileLogger.inf - MsCorePkg/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf { - - UefiRuntimeLib |MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf - SecurityLockAuditLib|MdeModulePkg/Library/SecurityLockAuditLibNull/SecurityLockAuditLibNull.inf - } - MsCorePkg/CapsuleServiceProtocolDxe/CapsuleServiceProtocolDxe.inf { - - ResetUtilityLib |MdeModulePkg/Library/ResetUtilityLib/ResetUtilityLib.inf - RngLib |MdePkg/Library/BaseRngLibNull/BaseRngLibNull.inf - BaseCryptLib |CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf - } - -[BuildOptions] -#force deprecated interfaces off - *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES +## @file +# MsCore Package Localized Strings and Content +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + PLATFORM_NAME = MsCore + PLATFORM_GUID = 25CFE603-202B-4297-A63A-00B534A8CC75 + PLATFORM_VERSION = .10 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/MsCorePkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + +[PcdsFeatureFlag] + + +[PcdsFixedAtBuild] + +!include MdePkg/MdeLibs.dsc.inc + +[LibraryClasses.common] + UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf + MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf + PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf + DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf + ResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf + MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf + DeviceSpecificBusInfoLib|MsCorePkg/Library/DeviceSpecificBusInfoLibNull/DeviceSpecificBusInfoLibNull.inf + MemoryProtectionExceptionLib|MsCorePkg/Library/BaseMemoryProtectionExceptionLibNull/BaseMemoryProtectionExceptionLibNull.inf + + SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf + + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf + MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf + GuidedSectionExtract|MsCorePkg/Core/GuidedSectionExtractPeim/GuidedSectionExtract.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf + ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf + UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf + LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf + VmgExitLib|UefiCpuPkg/Library/VmgExitLibNull/VmgExitLibNull.inf + UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf + + DeviceBootManagerLib|MsCorePkg/Library/DeviceBootManagerLibNull/DeviceBootManagerLibNull.inf + PlatformBootManagerLib|MsCorePkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf + MathLib|MsCorePkg/Library/MathLib/MathLib.inf + + SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf + DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf + OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf + IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf + JsonLiteParserLib|MsCorePkg/Library/JsonLiteParser/JsonLiteParser.inf + FltUsedLib|MdePkg/Library/FltUsedLib/FltUsedLib.inf + MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf + SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf + + RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf + XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf + + Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf + Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf + Tpm2DebugLib|SecurityPkg/Library/Tpm2DebugLib/Tpm2DebugLibNull.inf + Hash2CryptoLib|SecurityPkg/Library/BaseHash2CryptoLibNull/BaseHash2CryptoLibNull.inf + + IsCapsuleSupportedLib|MsCorePkg/Library/BaseIsCapsuleSupportedLibNull/BaseIsCapsuleSupportedLibNull.inf + CapsulePersistenceLib|MsCorePkg/Library/BaseCapsulePersistenceLibNull/BaseCapsulePersistenceLibNull.inf + QueueLib|MsCorePkg/Library/BaseQueueLibNull/BaseQueueLibNull.inf + +[LibraryClasses.common.UEFI_APPLICATION] + UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf + UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + +[LibraryClasses.common.DXE_CORE, LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.UEFI_APPLICATION] + CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf + +[LibraryClasses.common.SEC] + CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf + +[LibraryClasses.X64] +!if $(TARGET) == DEBUG +!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 + #if debug is enabled provide StackCookie support lib so that we can link to /GS exports + NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf +!else + # otherwise use the null version for GCC and CLANG + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf +!endif +!endif + +[LibraryClasses.common.PEIM] + PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf + MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf + PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf + ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf + PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf + HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf + CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf + +!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 or $(TOOL_CHAIN_TAG) == VS2022 +[LibraryClasses.IA32] + NULL|MdePkg/Library/VsIntrinsicLib/VsIntrinsicLib.inf +!endif + +[LibraryClasses.common.DXE_CORE] + ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf + HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf + +[LibraryClasses.common.DXE_SMM_DRIVER] + SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf + MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf + CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf + +[LibraryClasses.common.MM_STANDALONE] + MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf + StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf + + +################################################################################################### +# +# Components Section - list of the modules and components that will be processed by compilation +# tools and the EDK II tools to generate PE32/PE32+/Coff image files. +# +# Note: The EDK II DSC file is not used to specify how compiled binary images get placed +# into firmware volume images. This section is just a list of modules to compile from +# source into UEFI-compliant binaries. +# It is the FDF file that contains information on combining binary files into firmware +# volume images, whose concept is beyond UEFI and is described in PI specification. +# Binary modules do not need to be listed in this section, as they should be +# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), +# Logo (Logo.bmp), and etc. +# There may also be modules listed in this section that are not required in the FDF file, +# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be +# generated for it, but the binary will not be put into any firmware volume. +# +################################################################################################### + +[Components] + MsCorePkg/Library/MathLib/MathLib.inf + MsCorePkg/Library/MemoryTypeInformationChangeLib/MemoryTypeInformationChangeLib.inf + MsCorePkg/Library/TpmSgNvIndexLib/TpmSgNvIndexLib.inf + MsCorePkg/MuCryptoDxe/MuCryptoDxe.inf + MsCorePkg/MuVarPolicyFoundationDxe/MuVarPolicyFoundationDxe.inf + MsCorePkg/AcpiRGRT/AcpiRgrt.inf + MsCorePkg/Library/BaseMemoryProtectionExceptionLibNull/BaseMemoryProtectionExceptionLibNull.inf + MsCorePkg/Library/MemoryProtectionExceptionLibCmos/MemoryProtectionExceptionLibCmos.inf + MsCorePkg/Library/MemoryProtectionExceptionHandlerLib/MemoryProtectionExceptionHandlerLib.inf + MsCorePkg/Library/DxeQueueUefiVariableLib/DxeQueueUefiVariableLib.inf + MsCorePkg/Library/BaseQueueLibNull/BaseQueueLibNull.inf + MsCorePkg/Library/DxeCapsulePersistenceLib/DxeCapsulePersistenceLib.inf + MsCorePkg/Library/BaseCapsulePersistenceLibNull/BaseCapsulePersistenceLibNull.inf + MsCorePkg/Library/DxeIsCapsuleSupportedLib/DxeIsCapsuleSupportedLib.inf + MsCorePkg/Library/BaseIsCapsuleSupportedLibNull/BaseIsCapsuleSupportedLibNull.inf + MsCorePkg/Library/SecureBootKeyStoreLibNull/SecureBootKeyStoreLibNull.inf + MsCorePkg/Library/MuSecureBootKeySelectorLib/MuSecureBootKeySelectorLib.inf + +[Components.IA32] + MsCorePkg/Core/GuidedSectionExtractPeim/GuidedSectionExtract.inf + MsCorePkg/Universal/StatusCodeHandler/Serial/Pei/SerialStatusCodeHandlerPei.inf + MsCorePkg/Library/DebugPortPei/DebugPortPei.inf + MsCorePkg/Library/PeiDebugLib/PeiDebugLib.inf + MsCorePkg/DebugFileLoggerII/Pei/DebugFileLoggerPei.inf + MsCorePkg/CapsuleServicePei/CapsuleServicePei.inf + +[Components.X64] + MsCorePkg/Library/DeviceBootManagerLibNull/DeviceBootManagerLibNull.inf + MsCorePkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf + MsCorePkg/Library/DxeDebugLibRouter/DxeDebugLibRouter.inf + MsCorePkg/Library/DebugPortProtocolInstallLib/DebugPortProtocolInstallLib.inf + MsCorePkg/Universal/StatusCodeHandler/Serial/Dxe/SerialStatusCodeHandlerDxe.inf + MsCorePkg/Universal/StatusCodeHandler/Serial/Smm/SerialStatusCodeHandlerSmm.inf + MsCorePkg/Universal/StatusCodeHandler/Serial/Smm/SerialStatusCodeHandlerStandaloneMm.inf + MsCorePkg/IncompatiblePciDevices/NoOptionRomsAllowed/NoOptionRomsAllowed.inf + MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.inf + MsCorePkg/Library/JsonLiteParser/JsonLiteParser.inf + MsCorePkg/UnitTests/JsonTest/JsonTestApp.inf + MsCorePkg/Library/DeviceSpecificBusInfoLibNull/DeviceSpecificBusInfoLibNull.inf + MsCorePkg/CheckHardwareConnected/CheckHardwareConnected.inf + MsCorePkg/Library/PasswordStoreLibNull/PasswordStoreLibNull.inf + MsCorePkg/DebugFileLoggerII/Dxe/DebugFileLogger.inf + MsCorePkg/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf { + + UefiRuntimeLib |MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf + SecurityLockAuditLib|MdeModulePkg/Library/SecurityLockAuditLibNull/SecurityLockAuditLibNull.inf + } + MsCorePkg/CapsuleServiceProtocolDxe/CapsuleServiceProtocolDxe.inf { + + ResetUtilityLib |MdeModulePkg/Library/ResetUtilityLib/ResetUtilityLib.inf + RngLib |MdePkg/Library/BaseRngLibNull/BaseRngLibNull.inf + BaseCryptLib |CryptoPkg/Library/BaseCryptLibNull/BaseCryptLibNull.inf + } + +[BuildOptions] +#force deprecated interfaces off + *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTests.c b/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.c similarity index 96% rename from MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTests.c rename to MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.c index 670b3870..cdb28c6e 100644 --- a/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTests.c +++ b/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.c @@ -6,7 +6,7 @@ Copyright (C) Microsoft Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent **/ -#include "MathLibUnitTests.h" +#include "MathLibUnitTestApp.h" #include "TestData.h" #include #include diff --git a/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTests.h b/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.h similarity index 100% rename from MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTests.h rename to MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.h diff --git a/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTest.inf b/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.inf similarity index 88% rename from MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTest.inf rename to MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.inf index a50d4f5a..97c44c88 100644 --- a/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTest.inf +++ b/MsCorePkg/UnitTests/MathLibUnitTest/MathLibUnitTestApp.inf @@ -1,48 +1,48 @@ -## @file -# Uefi Shell based Application that Unit Tests the MathLib -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -## - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = MathLibUnitTestApp - FILE_GUID = D3AB662D-B581-41D0-80E0-09534A2DEDB8 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 IPF EBC -# - -[Sources] - MathLibUnitTests.c - TestData.h - -[Packages] - MsCorePkg/MsCorePkg.dec - MdePkg/MdePkg.dec - - -[LibraryClasses] - BaseLib - BaseMemoryLib - UefiApplicationEntryPoint - DebugLib - UnitTestLib - PrintLib - MathLib - -[Protocols] - -[Guids] - -[FeaturePcd] - -[Pcd] - +## @file +# Uefi Shell based Application that Unit Tests the MathLib +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = MathLibUnitTestApp + FILE_GUID = D3AB662D-B581-41D0-80E0-09534A2DEDB8 + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = UefiMain + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# + +[Sources] + MathLibUnitTestApp.c + TestData.h + +[Packages] + MsCorePkg/MsCorePkg.dec + MdePkg/MdePkg.dec + + +[LibraryClasses] + BaseLib + BaseMemoryLib + UefiApplicationEntryPoint + DebugLib + UnitTestLib + PrintLib + MathLib + +[Protocols] + +[Guids] + +[FeaturePcd] + +[Pcd] + diff --git a/MsWheaPkg/MsWheaPkg.dsc b/MsWheaPkg/MsWheaPkg.dsc index 20c85176..9da20bf4 100644 --- a/MsWheaPkg/MsWheaPkg.dsc +++ b/MsWheaPkg/MsWheaPkg.dsc @@ -1,165 +1,165 @@ -## @file -# Microsoft Whea Package, routing ReportStatusCode here to store as Hardware -# Error Record. -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -################################################################################ -[Defines] - PLATFORM_NAME = MsWheaPkg - PLATFORM_GUID = EB995458-4F79-49F8-8F1F-977B581701D5 - PLATFORM_VERSION = 0.1 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY = Build/MsWheaPkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - -################################################################################ -# -# Library Class section - list of all Library Classes needed by this Platform. -# -################################################################################ -!include MdePkg/MdeLibs.dsc.inc - -[LibraryClasses] - # - # Entry Point Libraries - # - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf - # - # Common Libraries - # - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - -[LibraryClasses.X64] - RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf -!if $(TARGET) == DEBUG -!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 - #if debug is enabled provide StackCookie support lib so that we can link to /GS exports - NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf -!else - # otherwise use the null version for GCC and CLANG - BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf -!endif -!endif - -[LibraryClasses] - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf - DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf - OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf - HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf - SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf - IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf - SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf - - MsWheaEarlyStorageLib|MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf - CheckHwErrRecHeaderLib|MsWheaPkg/Library/CheckHwErrRecHeaderLib/CheckHwErrRecHeaderLib.inf - MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf - ParserRegistryLib|MsWheaPkg/Library/ParserRegistryLib/ParserRegistryLib.inf - GenericSectionParserLib|MsWheaPkg/Library/GenericSectionParserLib/GenericSectionParserLib.inf - - XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf - -[LibraryClasses.common.UEFI_APPLICATION] - UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf - UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf - -# UNIT TEST APPLICATION RELATED -[LibraryClasses.X64.UEFI_APPLICATION] - UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf - MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf - #TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf - PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf - DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf - DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf - SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf - - ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf - FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - -[LibraryClasses.common.PEIM] - PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf - PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf - PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf - HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf - MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf - ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf - -[LibraryClasses.common.DXE_SMM_DRIVER] - MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf - -[LibraryClasses.common.MM_STANDALONE] - StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf - MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf - MemoryAllocationLib|StandaloneMmPkg/Library/StandaloneMmMemoryAllocationLib/StandaloneMmMemoryAllocationLib.inf - -[PcdsFixedAtBuild] - # Enabled support for HwErrRec and increased the size of HwErrRec region on flash - gEfiMdePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|1 - gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00001000 - # This is copied from MdePkg.dec for self reference - # gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x400 - -################################################################################ -# -# Components section - list of all Components needed by this Platform. -# -################################################################################ -[Components] - MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf - MsWheaPkg/Library/MsWheaEarlyStorageLibNull/MsWheaEarlyStorageLibNull.inf - MsWheaPkg/Library/CheckHwErrRecHeaderLib/CheckHwErrRecHeaderLib.inf - MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf - MsWheaPkg/Library/ParserRegistryLib/ParserRegistryLib.inf - MsWheaPkg/Library/GenericSectionParserLib/GenericSectionParserLib.inf - -[Components.IA32] - MsWheaPkg/MsWheaReport/Pei/MsWheaReportPei.inf { - - DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf - } - -[Components.X64] - MsWheaPkg/HwErrBert/HwErrBert.inf - MsWheaPkg/MsWheaReport/Dxe/MsWheaReportDxe.inf - MsWheaPkg/MsWheaReport/Smm/MsWheaReportSmm.inf - MsWheaPkg/MsWheaReport/Smm/MsWheaReportStandaloneMm.inf - - # Check HWErrRec headers - MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestsApp.inf - - # Raises Report Status Codes - MsWheaPkg/DummyErrorDriver/DummyErrorDriver.inf - - # UEFI_APPLICATION which can be run in shell to set variable which decides how many HWErrRecs are produced - # at boot - MsWheaPkg/EnableDisableErrors/EnableDisableErrors.inf - - # UNIT TEST APPLICATION RELATED - MsWheaPkg/Test/UnitTests/MsWheaReportUnitTestApp/MsWheaReportUnitTestApp.inf - MsWheaPkg/Test/UnitTests/MsWheaEarlyStorageUnitTestApp/MsWheaEarlyUnitTestApp.inf - - # Hardware Health (Menu) application - MsWheaPkg/HwhMenu/HwhMenu.inf - -[BuildOptions] +## @file +# Microsoft Whea Package, routing ReportStatusCode here to store as Hardware +# Error Record. +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +################################################################################ +[Defines] + PLATFORM_NAME = MsWheaPkg + PLATFORM_GUID = EB995458-4F79-49F8-8F1F-977B581701D5 + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/MsWheaPkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + +################################################################################ +# +# Library Class section - list of all Library Classes needed by this Platform. +# +################################################################################ +!include MdePkg/MdeLibs.dsc.inc + +[LibraryClasses] + # + # Entry Point Libraries + # + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + # + # Common Libraries + # + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf + +[LibraryClasses.X64] + RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf +!if $(TARGET) == DEBUG +!if $(TOOL_CHAIN_TAG) == VS2017 or $(TOOL_CHAIN_TAG) == VS2015 or $(TOOL_CHAIN_TAG) == VS2019 + #if debug is enabled provide StackCookie support lib so that we can link to /GS exports + NULL|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibRng/BaseBinSecurityLibRng.inf +!else + # otherwise use the null version for GCC and CLANG + BaseBinSecurityLib|MdePkg/Library/BaseBinSecurityLibNull/BaseBinSecurityLibNull.inf +!endif +!endif + +[LibraryClasses] + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf + OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf + HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf + SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf + SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf + + MsWheaEarlyStorageLib|MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf + CheckHwErrRecHeaderLib|MsWheaPkg/Library/CheckHwErrRecHeaderLib/CheckHwErrRecHeaderLib.inf + MuTelemetryHelperLib|MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf + ParserRegistryLib|MsWheaPkg/Library/ParserRegistryLib/ParserRegistryLib.inf + GenericSectionParserLib|MsWheaPkg/Library/GenericSectionParserLib/GenericSectionParserLib.inf + + XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf + +[LibraryClasses.common.UEFI_APPLICATION] + UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibSimpleFileSystem/UnitTestPersistenceLibSimpleFileSystem.inf + UnitTestResultReportLib|XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf + +# UNIT TEST APPLICATION RELATED +[LibraryClasses.X64.UEFI_APPLICATION] + UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf + MemoryTypeInformationChangeLib|MdeModulePkg/Library/MemoryTypeInformationChangeLibNull/MemoryTypeInformationChangeLibNull.inf + #TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf + PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf + DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf + +[LibraryClasses.common.PEIM] + PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf + PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf + PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf + HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf + MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf + ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf + +[LibraryClasses.common.DXE_SMM_DRIVER] + MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf + +[LibraryClasses.common.MM_STANDALONE] + StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf + MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf + MemoryAllocationLib|StandaloneMmPkg/Library/StandaloneMmMemoryAllocationLib/StandaloneMmMemoryAllocationLib.inf + +[PcdsFixedAtBuild] + # Enabled support for HwErrRec and increased the size of HwErrRec region on flash + gEfiMdePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel|1 + gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00001000 + # This is copied from MdePkg.dec for self reference + # gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x400 + +################################################################################ +# +# Components section - list of all Components needed by this Platform. +# +################################################################################ +[Components] + MsWheaPkg/Library/MsWheaEarlyStorageLib/MsWheaEarlyStorageLib.inf + MsWheaPkg/Library/MsWheaEarlyStorageLibNull/MsWheaEarlyStorageLibNull.inf + MsWheaPkg/Library/CheckHwErrRecHeaderLib/CheckHwErrRecHeaderLib.inf + MsWheaPkg/Library/MuTelemetryHelperLib/MuTelemetryHelperLib.inf + MsWheaPkg/Library/ParserRegistryLib/ParserRegistryLib.inf + MsWheaPkg/Library/GenericSectionParserLib/GenericSectionParserLib.inf + +[Components.IA32] + MsWheaPkg/MsWheaReport/Pei/MsWheaReportPei.inf { + + DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf + } + +[Components.X64] + MsWheaPkg/HwErrBert/HwErrBert.inf + MsWheaPkg/MsWheaReport/Dxe/MsWheaReportDxe.inf + MsWheaPkg/MsWheaReport/Smm/MsWheaReportSmm.inf + MsWheaPkg/MsWheaReport/Smm/MsWheaReportStandaloneMm.inf + + # Check HWErrRec headers + MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestApp.inf + + # Raises Report Status Codes + MsWheaPkg/DummyErrorDriver/DummyErrorDriver.inf + + # UEFI_APPLICATION which can be run in shell to set variable which decides how many HWErrRecs are produced + # at boot + MsWheaPkg/EnableDisableErrors/EnableDisableErrors.inf + + # UNIT TEST APPLICATION RELATED + MsWheaPkg/Test/UnitTests/MsWheaReportUnitTestApp/MsWheaReportUnitTestApp.inf + MsWheaPkg/Test/UnitTests/MsWheaEarlyStorageUnitTestApp/MsWheaEarlyUnitTestApp.inf + + # Hardware Health (Menu) application + MsWheaPkg/HwhMenu/HwhMenu.inf + +[BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES \ No newline at end of file diff --git a/MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestsApp.c b/MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestApp.c similarity index 100% rename from MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestsApp.c rename to MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestApp.c diff --git a/MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestsApp.inf b/MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestApp.inf similarity index 79% rename from MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestsApp.inf rename to MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestApp.inf index b7af3be0..602e4698 100644 --- a/MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestsApp.inf +++ b/MsWheaPkg/Test/UnitTests/Library/LibraryClass/CheckHwErrRecHeaderTestApp.inf @@ -1,32 +1,32 @@ -## @file CheckHwErrRecHeaderTestsApp.inf -# -# The CheckHwErrRecHeaderLib test application -# -# Copyright (C) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - - -[Defines] - INF_VERSION = 0x00010006 - BASE_NAME = CheckHwErrRecHeaderTestsApp - FILE_GUID = df5a6fad-8786-4a9d-9d02-eab39497b4a1 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = CheckHwErrRecHeaderTestsEntry - -[Sources] - CheckHwErrRecHeaderTestsApp.c - -[Packages] - MdePkg/MdePkg.dec - MsWheaPkg/MsWheaPkg.dec - -[LibraryClasses] - BaseLib - BaseMemoryLib - UefiApplicationEntryPoint - DebugLib - UnitTestLib - PrintLib - CheckHwErrRecHeaderLib +## @file CheckHwErrRecHeaderTestApp.inf +# +# The CheckHwErrRecHeaderLib test application +# +# Copyright (C) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + + +[Defines] + INF_VERSION = 0x00010006 + BASE_NAME = CheckHwErrRecHeaderTestApp + FILE_GUID = df5a6fad-8786-4a9d-9d02-eab39497b4a1 + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = CheckHwErrRecHeaderTestsEntry + +[Sources] + CheckHwErrRecHeaderTestApp.c + +[Packages] + MdePkg/MdePkg.dec + MsWheaPkg/MsWheaPkg.dec + +[LibraryClasses] + BaseLib + BaseMemoryLib + UefiApplicationEntryPoint + DebugLib + UnitTestLib + PrintLib + CheckHwErrRecHeaderLib diff --git a/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTest.c b/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.c similarity index 96% rename from UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTest.c rename to UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.c index 19a9ee49..73b1e31d 100644 --- a/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTest.c +++ b/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.c @@ -32,7 +32,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include #include -#define UNIT_TEST_APP_NAME "BootAuditTest" +#define UNIT_TEST_APP_NAME "BootAuditTestApp" #define UNIT_TEST_APP_VERSION "1.0" typedef struct { diff --git a/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.inf b/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.inf index 9c3e340b..92d86126 100644 --- a/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.inf +++ b/UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.inf @@ -22,7 +22,7 @@ # [Sources] - BootAuditTest.c + BootAuditTestApp.c [Packages] MdePkg/MdePkg.dec diff --git a/UefiTestingPkg/AuditTests/PagingAudit/README.md b/UefiTestingPkg/AuditTests/PagingAudit/README.md index a66e2e90..50d1abf3 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/README.md +++ b/UefiTestingPkg/AuditTests/PagingAudit/README.md @@ -1,141 +1,141 @@ -# Paging Audit - -## SmmPagingAudit - -SMM is a privileged mode of the ia32/x64 cpu architecture. In this environment nearly all system state can -be inspected including that of the operating system, kernel, and hypervisor. Due to it's -capabilities SMM has become an area of interest for those searching to exploit the system. -To help minimize the interest and impact of an exploit in SMM the SMI handlers should operate -in a least privileged model. To do this standard paging can be leveraged to limit the SMI -handlers access. Tianocore has a feature to enable paging within SMM and this tool helps confirm -the configuration being used. This tool requires three parts to get a complete view. - -### SMM - -The SMM driver must be included in your build and dispatched to SMM before the End Of Dxe. It is -recommended that this driver should only be used on debug builds as it reports the entire -SMM memory environment to the caller. The shell app will communicate to the SMM driver and -request critical memory information including IDT, GDT, page tables, and loaded images. - -### SMM Version App - -The UEFI shell application collects system information from the DXE environment and then -communicates to the SMM driver/handler to collect necessary info from SMM. It then -writes this data to files and then that content is used by the windows scripts. - -## DxePagingAudit - -The Dxe version of paging audit driver/shell app intends to inspect all 4 levels of page -tables and their corresponding Read/Write/Executable permissions. The driver/shell app will -collect necessary memory information from platform environment, then iterate through each -page entries and log them on to available SimpleFileSystem. The collected *.dat files can be -parsed using Windows\PagingReportGenerator.py. - -### DXE Driver - -The DXE Driver registers an event to be notified on Mu Pre Exit Boot Services (to change this, -replace gMuEventPreExitBootServicesGuid with a different event GUID), which will then trigger -the paging information collection. - -### DXE Version App - -The DXE version of UEFI shell application collects necessary system and memory information -from DXE when invoked from Shell environment. - -## Windows - -The Windows script will look at the *.DAT files, parse their content, check for errors -and then insert the formatted data into the Html report file. This report file is then double-clickable -by the end user/developer to review the posture of the SMM environment. The Results tab applies -our suggested rules for SMM to show if the environment passes or fails. -If it fails the filters on the data tab can be configured to show where the problem exists. - -## Usage / Enabling on EDK2 based system - -First, for the SMM driver and app you need to add them to your DSC file for your project so they get compiled. - -### SMM Paging Audit - -```text -[Components.X64] - UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditDriver.inf - UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditApp.inf -``` - -Next, you must add the SMM driver to a firmware volume in your FDF that can dispatch SMM modules. - -```text -INF UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditApp.inf -``` - -Third, after compiling your new firmware you must: - -1. Flash that image on the system. -2. Copy the SmmPagingAuditApp.efi to a USB key - -Then, boot your system running the new firmware to the shell and run the app. The tool will create a set of *.dat files on -the same USB key. - -On a Windows PC, run the Python script on the data found on your USB key. - -Finally, double-click the HTML output file and check your results. - -### DXE Paging Audit - -#### DxePagingAuditDxe - -1. Add the following entry to platform dsc file; - - ```text - [Components.X64] - UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf - ``` - -2. Add the driver to a firmware volume in your FDF that can dispatch it; - - ```text - INF UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf - ``` - -3. After compiling your new firmware you must flash that image on the system. -4. Boot your system running the new firmware to the OS then reboot to UEFI shell with a USB plugged in. If the USB disk is - `FS0:\\`, the files should be in `FS1:\\`. Copy them to the flash drive: - - ```cmd - copy FS1:\*.dat FS0:\ - ``` - -5. On a Windows PC, run Windows\PagingReportGenerator.py script with the data found on your USB key. Please use the following -command for detailed script instruction: - - ```cmd - PagingReportGenerator.py -h - ``` - -6. Double-click the HTML output file and check your results. - -#### DxePagingAuditApp - -1. Add the following entry to platform dsc file: - - ```text - [Components.X64] - UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditApp.inf - ``` - -2. Compile the newly added application and copy DxePagingAuditApp.efi to a USB key. -3. Boot your system to the shell with the USB plugged in. If the USB disk is `FS0:\`, the files -should be in `FS1:\\`. Copy them to the flash drive: - - ```cmd - FS0:\ - DxePagingAuditApp.efi - copy FS1:\*.dat FS0:\ - ``` - -4. Follow step 5 - 6 from DxePagingAuditDxe section. - -## Copyright - -Copyright (c) Microsoft Corporation. -SPDX-License-Identifier: BSD-2-Clause-Patent +# Paging Audit + +## SmmPagingAudit + +SMM is a privileged mode of the ia32/x64 cpu architecture. In this environment nearly all system state can +be inspected including that of the operating system, kernel, and hypervisor. Due to it's +capabilities SMM has become an area of interest for those searching to exploit the system. +To help minimize the interest and impact of an exploit in SMM the SMI handlers should operate +in a least privileged model. To do this standard paging can be leveraged to limit the SMI +handlers access. Tianocore has a feature to enable paging within SMM and this tool helps confirm +the configuration being used. This tool requires three parts to get a complete view. + +### SMM + +The SMM driver must be included in your build and dispatched to SMM before the End Of Dxe. It is +recommended that this driver should only be used on debug builds as it reports the entire +SMM memory environment to the caller. The shell app will communicate to the SMM driver and +request critical memory information including IDT, GDT, page tables, and loaded images. + +### SMM Version App + +The UEFI shell application collects system information from the DXE environment and then +communicates to the SMM driver/handler to collect necessary info from SMM. It then +writes this data to files and then that content is used by the windows scripts. + +## DxePagingAudit + +The Dxe version of paging audit driver/shell app intends to inspect all 4 levels of page +tables and their corresponding Read/Write/Executable permissions. The driver/shell app will +collect necessary memory information from platform environment, then iterate through each +page entries and log them on to available SimpleFileSystem. The collected *.dat files can be +parsed using Windows\PagingReportGenerator.py. + +### DXE Driver + +The DXE Driver registers an event to be notified on Mu Pre Exit Boot Services (to change this, +replace gMuEventPreExitBootServicesGuid with a different event GUID), which will then trigger +the paging information collection. + +### DXE Version App + +The DXE version of UEFI shell application collects necessary system and memory information +from DXE when invoked from Shell environment. + +## Windows + +The Windows script will look at the *.DAT files, parse their content, check for errors +and then insert the formatted data into the Html report file. This report file is then double-clickable +by the end user/developer to review the posture of the SMM environment. The Results tab applies +our suggested rules for SMM to show if the environment passes or fails. +If it fails the filters on the data tab can be configured to show where the problem exists. + +## Usage / Enabling on EDK2 based system + +First, for the SMM driver and app you need to add them to your DSC file for your project so they get compiled. + +### SMM Paging Audit + +```text +[Components.X64] + UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditDriver.inf + UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditTestApp.inf +``` + +Next, you must add the SMM driver to a firmware volume in your FDF that can dispatch SMM modules. + +```text +INF UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditTestApp.inf +``` + +Third, after compiling your new firmware you must: + +1. Flash that image on the system. +2. Copy the SmmPagingAuditTestApp.efi to a USB key + +Then, boot your system running the new firmware to the shell and run the app. The tool will create a set of *.dat files on +the same USB key. + +On a Windows PC, run the Python script on the data found on your USB key. + +Finally, double-click the HTML output file and check your results. + +### DXE Paging Audit + +#### DxePagingAuditDxe + +1. Add the following entry to platform dsc file; + + ```text + [Components.X64] + UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf + ``` + +2. Add the driver to a firmware volume in your FDF that can dispatch it; + + ```text + INF UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf + ``` + +3. After compiling your new firmware you must flash that image on the system. +4. Boot your system running the new firmware to the OS then reboot to UEFI shell with a USB plugged in. If the USB disk is + `FS0:\\`, the files should be in `FS1:\\`. Copy them to the flash drive: + + ```cmd + copy FS1:\*.dat FS0:\ + ``` + +5. On a Windows PC, run Windows\PagingReportGenerator.py script with the data found on your USB key. Please use the following +command for detailed script instruction: + + ```cmd + PagingReportGenerator.py -h + ``` + +6. Double-click the HTML output file and check your results. + +#### DxePagingAuditTestApp + +1. Add the following entry to platform dsc file: + + ```text + [Components.X64] + UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditTestApp.inf + ``` + +2. Compile the newly added application and copy DxePagingAuditTestApp.efi to a USB key. +3. Boot your system to the shell with the USB plugged in. If the USB disk is `FS0:\`, the files +should be in `FS1:\\`. Copy them to the flash drive: + + ```cmd + FS0:\ + DxePagingAuditTestApp.efi + copy FS1:\*.dat FS0:\ + ``` + +4. Follow step 5 - 6 from DxePagingAuditDxe section. + +## Copyright + +Copyright (c) Microsoft Corporation. +SPDX-License-Identifier: BSD-2-Clause-Patent diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/App/DxePagingAuditApp.c b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/App/DxePagingAuditTestApp.c similarity index 83% rename from UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/App/DxePagingAuditApp.c rename to UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/App/DxePagingAuditTestApp.c index 9225a897..66df4697 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/App/DxePagingAuditApp.c +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/App/DxePagingAuditTestApp.c @@ -1,4 +1,4 @@ -/** @file -- DxePagingAuditApp.c +/** @file -- DxePagingAuditTestApp.c This Shell App writes page table and memory map information to SFS. Copyright (c) Microsoft Corporation. @@ -13,7 +13,7 @@ UINTN mMemoryInfoDatabaseSize = 0; UINTN mMemoryInfoDatabaseAllocSize = 0; /** - SmmPagingAuditAppEntryPoint + DxePagingAuditTestAppEntryPoint @param[in] ImageHandle The firmware allocated handle for the EFI image. @param[in] SystemTable A pointer to the EFI System Table. @@ -24,7 +24,7 @@ UINTN mMemoryInfoDatabaseAllocSize = 0; **/ EFI_STATUS EFIAPI -PagingAuditDxeAppEntryPoint ( +DxePagingAuditTestAppEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) @@ -38,4 +38,4 @@ PagingAuditDxeAppEntryPoint ( DEBUG ((DEBUG_ERROR, "%a leave - %r\n", __FUNCTION__, Status)); return EFI_SUCCESS; -} // PagingAuditDxeAppEntryPoint() +} // DxePagingAuditTestAppEntryPoint() diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/Driver/DxePagingAuditDriver.c b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/Driver/DxePagingAuditDriver.c index d09aec18..51910361 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/Driver/DxePagingAuditDriver.c +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Dxe/Driver/DxePagingAuditDriver.c @@ -1,4 +1,4 @@ -/** @file -- DxePagingAuditApp.c +/** @file -- DxePagingAuditDriver.c This DXE Driver writes page table and memory map information to SFS when triggered by an event. @@ -14,7 +14,7 @@ UINTN mMemoryInfoDatabaseSize = 0; UINTN mMemoryInfoDatabaseAllocSize = 0; /** - SmmPagingAuditAppEntryPoint + PagingAuditDriverEntryPoint @param[in] ImageHandle The firmware allocated handle for the EFI image. @param[in] SystemTable A pointer to the EFI System Table. diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf index 2e5b5e19..c8aaae60 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf @@ -1,57 +1,57 @@ -## @file DxePagingAudit.inf -# This DXE Driver writes page table and memory map information to SFS when triggered -# by an event. -# -## -# Copyright (c) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - - -[Defines] - INF_VERSION = 0x00010017 - BASE_NAME = DxePagingAuditDriver - FILE_GUID = 8C8CEAB1-6062-4777-BD21-7A1C034EF034 - VERSION_STRING = 1.0 - MODULE_TYPE = DXE_DRIVER - ENTRY_POINT = PagingAuditDriverEntryPoint - - -[Sources] - Dxe/Driver/DxePagingAuditDriver.c - PagingAuditCommon.c - PagingAuditCommon.h - - -[Sources.X64] - X64/PagingAuditProcessor.c - - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - UefiCpuPkg/UefiCpuPkg.dec - - -[LibraryClasses] - UefiDriverEntryPoint - PrintLib - DebugLib - UefiBootServicesTableLib - UefiLib - PeCoffGetEntryPointLib - UefiCpuLib - HobLib - -[Guids] - gEfiDebugImageInfoTableGuid ## SOMETIMES_CONSUMES ## GUID - gEfiMemoryAttributesTableGuid - gMuEventPreExitBootServicesGuid - -[Protocols] - gEfiBlockIoProtocolGuid - gHeapGuardDebugProtocolGuid - gEfiSimpleFileSystemProtocolGuid - -[Depex] +## @file DxePagingAuditDriver.inf +# This DXE Driver writes page table and memory map information to SFS when triggered +# by an event. +# +## +# Copyright (c) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + + +[Defines] + INF_VERSION = 0x00010017 + BASE_NAME = DxePagingAuditDriver + FILE_GUID = 8C8CEAB1-6062-4777-BD21-7A1C034EF034 + VERSION_STRING = 1.0 + MODULE_TYPE = DXE_DRIVER + ENTRY_POINT = PagingAuditDriverEntryPoint + + +[Sources] + Dxe/Driver/DxePagingAuditDriver.c + PagingAuditCommon.c + PagingAuditCommon.h + + +[Sources.X64] + X64/PagingAuditProcessor.c + + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + UefiCpuPkg/UefiCpuPkg.dec + + +[LibraryClasses] + UefiDriverEntryPoint + PrintLib + DebugLib + UefiBootServicesTableLib + UefiLib + PeCoffGetEntryPointLib + UefiCpuLib + HobLib + +[Guids] + gEfiDebugImageInfoTableGuid ## SOMETIMES_CONSUMES ## GUID + gEfiMemoryAttributesTableGuid + gMuEventPreExitBootServicesGuid + +[Protocols] + gEfiBlockIoProtocolGuid + gHeapGuardDebugProtocolGuid + gEfiSimpleFileSystemProtocolGuid + +[Depex] gEfiSimpleFileSystemProtocolGuid \ No newline at end of file diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditApp.inf b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditTestApp.inf similarity index 80% rename from UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditApp.inf rename to UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditTestApp.inf index b5080734..ee7858c1 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditApp.inf +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditTestApp.inf @@ -1,54 +1,54 @@ -## @file DxePagingAudit.inf -# This Shell App writes page table and memory map information to SFS. -# -## -# Copyright (c) Microsoft Corporation. -## SPDX-License-Identifier: BSD-2-Clause-Patent -## - - -[Defines] - INF_VERSION = 0x00010017 - BASE_NAME = DxePagingAuditApp - FILE_GUID = 5CA3255F-0C91-4C8D-A4CF-36E8BC49D6C4 - VERSION_STRING = 1.0 - MODULE_TYPE = UEFI_APPLICATION - ENTRY_POINT = PagingAuditDxeAppEntryPoint - - -[Sources] - Dxe/App/DxePagingAuditApp.c - PagingAuditCommon.c - PagingAuditCommon.h - - -[Sources.X64] - X64/PagingAuditProcessor.c - - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - UefiCpuPkg/UefiCpuPkg.dec - ShellPkg/ShellPkg.dec - - -[LibraryClasses] - PrintLib - DebugLib - UefiBootServicesTableLib - UefiLib - PeCoffGetEntryPointLib - UefiApplicationEntryPoint - ShellLib - UefiCpuLib - HobLib - -[Guids] - gEfiDebugImageInfoTableGuid ## SOMETIMES_CONSUMES ## GUID - gEfiMemoryAttributesTableGuid - -[Protocols] - gEfiBlockIoProtocolGuid - gHeapGuardDebugProtocolGuid - gEfiSimpleFileSystemProtocolGuid +## @file DxePagingAuditTestApp.inf +# This Shell App writes page table and memory map information to SFS. +# +## +# Copyright (c) Microsoft Corporation. +## SPDX-License-Identifier: BSD-2-Clause-Patent +## + + +[Defines] + INF_VERSION = 0x00010017 + BASE_NAME = DxePagingAuditTestApp + FILE_GUID = 5CA3255F-0C91-4C8D-A4CF-36E8BC49D6C4 + VERSION_STRING = 1.0 + MODULE_TYPE = UEFI_APPLICATION + ENTRY_POINT = DxePagingAuditTestAppEntryPoint + + +[Sources] + Dxe/App/DxePagingAuditTestApp.c + PagingAuditCommon.c + PagingAuditCommon.h + + +[Sources.X64] + X64/PagingAuditProcessor.c + + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + UefiCpuPkg/UefiCpuPkg.dec + ShellPkg/ShellPkg.dec + + +[LibraryClasses] + PrintLib + DebugLib + UefiBootServicesTableLib + UefiLib + PeCoffGetEntryPointLib + UefiApplicationEntryPoint + ShellLib + UefiCpuLib + HobLib + +[Guids] + gEfiDebugImageInfoTableGuid ## SOMETIMES_CONSUMES ## GUID + gEfiMemoryAttributesTableGuid + +[Protocols] + gEfiBlockIoProtocolGuid + gHeapGuardDebugProtocolGuid + gEfiSimpleFileSystemProtocolGuid diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/PagingAuditCommon.c b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/PagingAuditCommon.c index 68ae008b..6d8ba49c 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/PagingAuditCommon.c +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/PagingAuditCommon.c @@ -1,4 +1,4 @@ -/** @file -- DxePagingAuditApp.c +/** @file -- DxePagingAuditCommon.c This DXE Driver writes page table and memory map information to SFS when triggered by an event. diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/App/SmmPagingAuditApp.c b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/App/SmmPagingAuditTestApp.c similarity index 96% rename from UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/App/SmmPagingAuditApp.c rename to UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/App/SmmPagingAuditTestApp.c index b3db4c76..e47fbfa7 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/App/SmmPagingAuditApp.c +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/App/SmmPagingAuditTestApp.c @@ -1,4 +1,4 @@ -/** @file -- SmmPagingAuditApp.c +/** @file -- SmmPagingAuditTestApp.c This user-facing application collects information from the SMM page tables and writes it to files. @@ -555,7 +555,7 @@ LocateSmmCommonCommBuffer ( } // LocateSmmCommonCommBuffer() /** - SmmPagingAuditAppEntryPoint + SmmPagingAuditTestAppEntryPoint @param[in] ImageHandle The firmware allocated handle for the EFI image. @param[in] SystemTable A pointer to the EFI System Table. @@ -566,7 +566,7 @@ LocateSmmCommonCommBuffer ( **/ EFI_STATUS EFIAPI -SmmPagingAuditAppEntryPoint ( +SmmPagingAuditTestAppEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) @@ -588,4 +588,4 @@ SmmPagingAuditAppEntryPoint ( DEBUG ((DEBUG_INFO, "%a the app's done!\n", __FUNCTION__)); return EFI_SUCCESS; -} // SmmPagingAuditAppEntryPoint() +} // SmmPagingAuditTestAppEntryPoint() diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/Driver/SmmPagingAuditDriver.c b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/Driver/SmmPagingAuditDriver.c index c0057d19..a1400451 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/Driver/SmmPagingAuditDriver.c +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/Smm/Driver/SmmPagingAuditDriver.c @@ -1,5 +1,5 @@ -/** @file -- SmmPagingAuditSmm.c -This is the SMM portion of the SmmPagingAuditApp driver. +/** @file -- SmmPagingAuditDriver.c +This is the SMM portion of the SmmPagingAudit driver. It copies valid entries from the page tables into the communication buffer. Copyright (c) Microsoft Corporation. All rights reserved. diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditApp.inf b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditTestApp.inf similarity index 86% rename from UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditApp.inf rename to UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditTestApp.inf index 6f86cc4d..c4cb7268 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditApp.inf +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditTestApp.inf @@ -1,55 +1,55 @@ -## @file SmmPagingProtectionsTestApp.inf -# This user-facing application requests that the underlying SMM memory -# protection test infrastructure exercise a particular test. -# -## -# Copyright (c) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - INF_VERSION = 0x00010017 - BASE_NAME = SmmPagingAuditApp - FILE_GUID = D99AE95E-7BAF-49CF-A57D-9A5BFAC68E0A - VERSION_STRING = 1.0 - MODULE_TYPE = UEFI_APPLICATION - ENTRY_POINT = SmmPagingAuditAppEntryPoint - - -[Sources] - Smm/App/SmmPagingAuditApp.c - Smm/SmmPagingAuditCommon.h - PagingAuditCommon.c - PagingAuditCommon.h - -[Sources.X64] - X64/PagingAuditProcessor.c - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - ShellPkg/ShellPkg.dec - UefiCpuPkg/UefiCpuPkg.dec - - -[LibraryClasses] - ShellLib - UefiApplicationEntryPoint - PrintLib - DebugLib - UefiBootServicesTableLib - UefiLib - CpuExceptionHandlerLib - UefiCpuLib - HobLib - PeCoffGetEntryPointLib - -[Protocols] - gEfiBlockIoProtocolGuid - gEfiSmmCommunicationProtocolGuid - gHeapGuardDebugProtocolGuid - -[Guids] - gEdkiiPiSmmCommunicationRegionTableGuid ## SOMETIMES_CONSUMES ## GUID - gEfiDebugImageInfoTableGuid ## SOMETIMES_CONSUMES ## GUID - gEfiMemoryAttributesTableGuid +## @file SmmPagingProtectionsTestApp.inf +# This user-facing application requests that the underlying SMM memory +# protection test infrastructure exercise a particular test. +# +## +# Copyright (c) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + INF_VERSION = 0x00010017 + BASE_NAME = SmmPagingAuditTestApp + FILE_GUID = D99AE95E-7BAF-49CF-A57D-9A5BFAC68E0A + VERSION_STRING = 1.0 + MODULE_TYPE = UEFI_APPLICATION + ENTRY_POINT = SmmPagingAuditTestAppEntryPoint + + +[Sources] + Smm/App/SmmPagingAuditTestApp.c + Smm/SmmPagingAuditCommon.h + PagingAuditCommon.c + PagingAuditCommon.h + +[Sources.X64] + X64/PagingAuditProcessor.c + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + ShellPkg/ShellPkg.dec + UefiCpuPkg/UefiCpuPkg.dec + + +[LibraryClasses] + ShellLib + UefiApplicationEntryPoint + PrintLib + DebugLib + UefiBootServicesTableLib + UefiLib + CpuExceptionHandlerLib + UefiCpuLib + HobLib + PeCoffGetEntryPointLib + +[Protocols] + gEfiBlockIoProtocolGuid + gEfiSmmCommunicationProtocolGuid + gHeapGuardDebugProtocolGuid + +[Guids] + gEdkiiPiSmmCommunicationRegionTableGuid ## SOMETIMES_CONSUMES ## GUID + gEfiDebugImageInfoTableGuid ## SOMETIMES_CONSUMES ## GUID + gEfiMemoryAttributesTableGuid diff --git a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/X64/PagingAuditProcessor.c b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/X64/PagingAuditProcessor.c index 7bb4255f..7e5578e3 100644 --- a/UefiTestingPkg/AuditTests/PagingAudit/UEFI/X64/PagingAuditProcessor.c +++ b/UefiTestingPkg/AuditTests/PagingAudit/UEFI/X64/PagingAuditProcessor.c @@ -1,4 +1,4 @@ -/** @file -- DxePagingAuditApp.c +/** @file -- PagingAuditProcessor.c Platform specific memory handler dump function. Handler(s) need to be in compliance with existed Windows\PagingReportGenerator.py, i.e. TSEG. diff --git a/UefiTestingPkg/UefiTestingPkg.dsc b/UefiTestingPkg/UefiTestingPkg.dsc index d0ebd373..3190ab6a 100644 --- a/UefiTestingPkg/UefiTestingPkg.dsc +++ b/UefiTestingPkg/UefiTestingPkg.dsc @@ -1,127 +1,127 @@ -## @file -# UEFI Testing Package Localized Libraries and Content -# -# Copyright (c) Microsoft Corporation. All rights reserved. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - PLATFORM_NAME = UefiTestingPkg - PLATFORM_GUID = 9F85C44D-E3F6-47D7-BBB6-AD267D449C7A - PLATFORM_VERSION = 1.0 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY = Build/UefiTestingPkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - -## NOTE: Some of these library configurations are just for CI builds. -# If you would like to build these tests to run on your platform, -# you should substitute your LibraryClasses configuration. - -!include MdePkg/MdeLibs.dsc.inc - -[LibraryClasses.common] - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - MemoryAllocationLib|MdeModulePkg/Library/BaseMemoryAllocationLibNull/BaseMemoryAllocationLibNull.inf - DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf - PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf - DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf - SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf - CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf - HwResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf - - Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf - XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - XmlTreeQueryLib|XmlSupportPkg/Library/XmlTreeQueryLib/XmlTreeQueryLib.inf - - UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf - UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibNull/UnitTestPersistenceLibNull.inf - UnitTestResultReportLib|UnitTestFrameworkPkg/Library/UnitTestResultReportLib/UnitTestResultReportLibDebugLib.inf - UnitTestBootLib|UnitTestFrameworkPkg/Library/UnitTestBootLibNull/UnitTestBootLibNull.inf - - PlatformSmmProtectionsTestLib|UefiTestingPkg/Library/PlatformSmmProtectionsTestLibNull/PlatformSmmProtectionsTestLibNull.inf - -[LibraryClasses.common.DXE_SMM_DRIVER] - SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf - SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf - MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf - -[LibraryClasses.common.MM_STANDALONE] - MemLib|StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf - MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf - StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf - HobLib|MdeModulePkg/Library/BaseHobLibNull/BaseHobLibNull.inf - -[LibraryClasses.common.UEFI_APPLICATION, LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.DXE_SMM_DRIVER] - HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf - -[LibraryClasses.common.UEFI_APPLICATION] - Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf - FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf - ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf - IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf - PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf - PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf - PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf - -############################################################### -# -# Components Section - list of the modules and components that will be processed by compilation -# tools and the EDK II tools to generate PE32/PE32+/Coff image files. -# -# Note: The EDK II DSC file is not used to specify how compiled binary images get placed -# into firmware volume images. This section is just a list of modules to compile from -# source into UEFI-compliant binaries. -# It is the FDF file that contains information on combining binary files into firmware -# volume images, whose concept is beyond UEFI and is described in PI specification. -# Binary modules do not need to be listed in this section, as they should be -# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), -# Logo (Logo.bmp), and etc. -# There may also be modules listed in this section that are not required in the FDF file, -# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be -# generated for it, but the binary will not be put into any firmware volume. -# -################################################################################################### -[Components] - UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.inf - UefiTestingPkg/AuditTests/DMAProtectionAudit/UEFI/DMAIVRSProtectionUnitTestApp.inf - UefiTestingPkg/AuditTests/DMAProtectionAudit/UEFI/DMAVTdProtectionUnitTestApp.inf - UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditDriver.inf - UefiTestingPkg/AuditTests/TpmEventLogAudit/TpmEventLogAuditTestApp.inf - UefiTestingPkg/AuditTests/UefiVarLockAudit/UEFI/UefiVarLockAuditTestApp.inf - UefiTestingPkg/FunctionalSystemTests/HeapGuardTest/Smm/HeapGuardTestSmm.inf - UefiTestingPkg/FunctionalSystemTests/MemmapAndMatTestApp/MemmapAndMatTestApp.inf - UefiTestingPkg/FunctionalSystemTests/MorLockTestApp/MorLockTestApp.inf - UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/App/SmmPagingProtectionsTestApp.inf - UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/Smm/SmmPagingProtectionsTestSmm.inf - UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/Smm/SmmPagingProtectionsTestStandaloneMm.inf - UefiTestingPkg/Library/PlatformSmmProtectionsTestLibNull/PlatformSmmProtectionsTestLibNull.inf - UefiTestingPkg/PerfTests/BlockIoPerfTest/BlockIoPerfTest.inf - -[Components.X64] - # NOTE: These currently have source files that are only implemented for X64. - # If needed on IA32, should port the functions. - UefiTestingPkg/FunctionalSystemTests/HeapGuardTest/App/HeapGuardTestApp.inf - UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf - UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditApp.inf - UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditApp.inf - -[BuildOptions] -#force deprecated interfaces off - *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES +## @file +# UEFI Testing Package Localized Libraries and Content +# +# Copyright (c) Microsoft Corporation. All rights reserved. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + PLATFORM_NAME = UefiTestingPkg + PLATFORM_GUID = 9F85C44D-E3F6-47D7-BBB6-AD267D449C7A + PLATFORM_VERSION = 1.0 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/UefiTestingPkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + +## NOTE: Some of these library configurations are just for CI builds. +# If you would like to build these tests to run on your platform, +# you should substitute your LibraryClasses configuration. + +!include MdePkg/MdeLibs.dsc.inc + +[LibraryClasses.common] + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf + MemoryAllocationLib|MdeModulePkg/Library/BaseMemoryAllocationLibNull/BaseMemoryAllocationLibNull.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf + + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf + PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf + CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf + HwResetSystemLib|MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf + + Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf + XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + XmlTreeQueryLib|XmlSupportPkg/Library/XmlTreeQueryLib/XmlTreeQueryLib.inf + + UnitTestLib|UnitTestFrameworkPkg/Library/UnitTestLib/UnitTestLib.inf + UnitTestPersistenceLib|UnitTestFrameworkPkg/Library/UnitTestPersistenceLibNull/UnitTestPersistenceLibNull.inf + UnitTestResultReportLib|UnitTestFrameworkPkg/Library/UnitTestResultReportLib/UnitTestResultReportLibDebugLib.inf + UnitTestBootLib|UnitTestFrameworkPkg/Library/UnitTestBootLibNull/UnitTestBootLibNull.inf + + PlatformSmmProtectionsTestLib|UefiTestingPkg/Library/PlatformSmmProtectionsTestLibNull/PlatformSmmProtectionsTestLibNull.inf + +[LibraryClasses.common.DXE_SMM_DRIVER] + SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf + SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf + MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf + +[LibraryClasses.common.MM_STANDALONE] + MemLib|StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf + MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf + StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf + HobLib|MdeModulePkg/Library/BaseHobLibNull/BaseHobLibNull.inf + +[LibraryClasses.common.UEFI_APPLICATION, LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.DXE_SMM_DRIVER] + HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf + +[LibraryClasses.common.UEFI_APPLICATION] + Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf + PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf + PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf + PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf + +############################################################### +# +# Components Section - list of the modules and components that will be processed by compilation +# tools and the EDK II tools to generate PE32/PE32+/Coff image files. +# +# Note: The EDK II DSC file is not used to specify how compiled binary images get placed +# into firmware volume images. This section is just a list of modules to compile from +# source into UEFI-compliant binaries. +# It is the FDF file that contains information on combining binary files into firmware +# volume images, whose concept is beyond UEFI and is described in PI specification. +# Binary modules do not need to be listed in this section, as they should be +# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi), +# Logo (Logo.bmp), and etc. +# There may also be modules listed in this section that are not required in the FDF file, +# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be +# generated for it, but the binary will not be put into any firmware volume. +# +################################################################################################### +[Components] + UefiTestingPkg/AuditTests/BootAuditTest/UEFI/BootAuditTestApp.inf + UefiTestingPkg/AuditTests/DMAProtectionAudit/UEFI/DMAIVRSProtectionUnitTestApp.inf + UefiTestingPkg/AuditTests/DMAProtectionAudit/UEFI/DMAVTdProtectionUnitTestApp.inf + UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditDriver.inf + UefiTestingPkg/AuditTests/TpmEventLogAudit/TpmEventLogAuditTestApp.inf + UefiTestingPkg/AuditTests/UefiVarLockAudit/UEFI/UefiVarLockAuditTestApp.inf + UefiTestingPkg/FunctionalSystemTests/HeapGuardTest/Smm/HeapGuardTestSmm.inf + UefiTestingPkg/FunctionalSystemTests/MemmapAndMatTestApp/MemmapAndMatTestApp.inf + UefiTestingPkg/FunctionalSystemTests/MorLockTestApp/MorLockTestApp.inf + UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/App/SmmPagingProtectionsTestApp.inf + UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/Smm/SmmPagingProtectionsTestSmm.inf + UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/Smm/SmmPagingProtectionsTestStandaloneMm.inf + UefiTestingPkg/Library/PlatformSmmProtectionsTestLibNull/PlatformSmmProtectionsTestLibNull.inf + UefiTestingPkg/PerfTests/BlockIoPerfTest/BlockIoPerfTest.inf + +[Components.X64] + # NOTE: These currently have source files that are only implemented for X64. + # If needed on IA32, should port the functions. + UefiTestingPkg/FunctionalSystemTests/HeapGuardTest/App/HeapGuardTestApp.inf + UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditDriver.inf + UefiTestingPkg/AuditTests/PagingAudit/UEFI/SmmPagingAuditTestApp.inf + UefiTestingPkg/AuditTests/PagingAudit/UEFI/DxePagingAuditTestApp.inf + +[BuildOptions] +#force deprecated interfaces off + *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestsUefi.inf b/XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestApp.inf similarity index 95% rename from XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestsUefi.inf rename to XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestApp.inf index 7d8d07fd..dc3cd6d6 100644 --- a/XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestsUefi.inf +++ b/XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestApp.inf @@ -1,49 +1,49 @@ -## @file -# Uefi Shell based Application that Unit Tests the XmlTreeLib -# this includes parsing Xml, printing Xml, escaping and removing escape sequences for xml strings. -# -# Copyright (C) Microsoft Corporation. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = XmlTreeLibUnitTestApp - FILE_GUID = 204C443D-9003-45F2-A9A9-1919E93AF3F2 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 IPF EBC -# - -[Sources] - XmlTreeLibUnitTests.c - TestData.h - - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - XmlSupportPkg/XmlSupportPkg.dec - - -[LibraryClasses] - UefiApplicationEntryPoint - BaseLib - MemoryAllocationLib - XmlTreeLib - UnitTestLib - PrintLib - -[Protocols] - -[Guids] - -[FeaturePcd] - -[Pcd] - +## @file +# Uefi Shell based Application that Unit Tests the XmlTreeLib +# this includes parsing Xml, printing Xml, escaping and removing escape sequences for xml strings. +# +# Copyright (C) Microsoft Corporation. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = XmlTreeLibUnitTestApp + FILE_GUID = 204C443D-9003-45F2-A9A9-1919E93AF3F2 + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = UefiMain + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# + +[Sources] + XmlTreeLibUnitTests.c + TestData.h + + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + XmlSupportPkg/XmlSupportPkg.dec + + +[LibraryClasses] + UefiApplicationEntryPoint + BaseLib + MemoryAllocationLib + XmlTreeLib + UnitTestLib + PrintLib + +[Protocols] + +[Guids] + +[FeaturePcd] + +[Pcd] + diff --git a/XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestsUefi.inf b/XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestApp.inf similarity index 95% rename from XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestsUefi.inf rename to XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestApp.inf index 045a7491..f44780c2 100644 --- a/XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestsUefi.inf +++ b/XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestApp.inf @@ -1,51 +1,51 @@ -## @file -# Uefi Shell based Application that Unit Tests the XmlTreeQueryLib -# -# Copyright (C) Microsoft Corporation. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = XmlTreeQueryLibUnitTestApp - FILE_GUID = F4DAEB88-2251-4F65-9121-01729F7AA4AE - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 -# - -[Sources] - XmlTreeQueryLibUnitTests.c - AttributeTests.c - ElementTests.c - XmlTreeQueryLibUnitTests.h - - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - XmlSupportPkg/XmlSupportPkg.dec - - -[LibraryClasses] - UefiApplicationEntryPoint - BaseLib - MemoryAllocationLib - XmlTreeLib - XmlTreeQueryLib - UnitTestLib - PrintLib - -[Protocols] - -[Guids] - -[FeaturePcd] - -[Pcd] - +## @file +# Uefi Shell based Application that Unit Tests the XmlTreeQueryLib +# +# Copyright (C) Microsoft Corporation. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = XmlTreeQueryLibUnitTestApp + FILE_GUID = F4DAEB88-2251-4F65-9121-01729F7AA4AE + MODULE_TYPE = UEFI_APPLICATION + VERSION_STRING = 1.0 + ENTRY_POINT = UefiMain + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 +# + +[Sources] + XmlTreeQueryLibUnitTests.c + AttributeTests.c + ElementTests.c + XmlTreeQueryLibUnitTests.h + + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + XmlSupportPkg/XmlSupportPkg.dec + + +[LibraryClasses] + UefiApplicationEntryPoint + BaseLib + MemoryAllocationLib + XmlTreeLib + XmlTreeQueryLib + UnitTestLib + PrintLib + +[Protocols] + +[Guids] + +[FeaturePcd] + +[Pcd] + diff --git a/XmlSupportPkg/XmlSupportPkg.dsc b/XmlSupportPkg/XmlSupportPkg.dsc index 38f57a1c..f32b5e03 100644 --- a/XmlSupportPkg/XmlSupportPkg.dsc +++ b/XmlSupportPkg/XmlSupportPkg.dsc @@ -1,51 +1,51 @@ -## @file -# XmlSupportPackage Package Firmware Environment CI dsc file -# -# Copyright (C) Microsoft Corporation. -# SPDX-License-Identifier: BSD-2-Clause-Patent -## - -[Defines] - PLATFORM_NAME = XmlSupportPkg - PLATFORM_GUID = 6266634F-D749-4571-BBE7-CE99080D3D6A - PLATFORM_VERSION = 1.0 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY = Build/XmlSupportPkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER = DEFAULT - -!include MdePkg/MdeLibs.dsc.inc -!include UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc - -[LibraryClasses] - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf - XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - XmlTreeQueryLib|XmlSupportPkg/Library/XmlTreeQueryLib/XmlTreeQueryLib.inf - -[Components] - XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf - XmlSupportPkg/Library/XmlTreeQueryLib/XmlTreeQueryLib.inf - XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf - - ## - # Uefi environment unit tests - ## - XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestsUefi.inf - XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestsUefi.inf { - - #Turn off Halt on Assert and Print Assert so that libraries can - #be tested in more of a release mode environment - gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0E - } - -[BuildOptions] -#force deprecated interfaces off - *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES +## @file +# XmlSupportPackage Package Firmware Environment CI dsc file +# +# Copyright (C) Microsoft Corporation. +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + PLATFORM_NAME = XmlSupportPkg + PLATFORM_GUID = 6266634F-D749-4571-BBE7-CE99080D3D6A + PLATFORM_VERSION = 1.0 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/XmlSupportPkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = DEFAULT + +!include MdePkg/MdeLibs.dsc.inc +!include UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc + +[LibraryClasses] + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf + XmlTreeLib|XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + XmlTreeQueryLib|XmlSupportPkg/Library/XmlTreeQueryLib/XmlTreeQueryLib.inf + +[Components] + XmlSupportPkg/Library/XmlTreeLib/XmlTreeLib.inf + XmlSupportPkg/Library/XmlTreeQueryLib/XmlTreeQueryLib.inf + XmlSupportPkg/Library/UnitTestResultReportJUnitFormatLib/UnitTestResultReportLib.inf + + ## + # Uefi environment unit tests + ## + XmlSupportPkg/Test/UnitTest/XmlTreeLib/XmlTreeLibUnitTestApp.inf + XmlSupportPkg/Test/UnitTest/XmlTreeQueryLib/XmlTreeQueryLibUnitTestApp.inf { + + #Turn off Halt on Assert and Print Assert so that libraries can + #be tested in more of a release mode environment + gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0E + } + +[BuildOptions] +#force deprecated interfaces off + *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES