mirror of https://github.com/acidanthera/audk.git
Make NT32 SecMain not depend on ReportStatusCodeLib
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1818 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
6c82102e9e
commit
35b309d6a9
|
@ -132,7 +132,6 @@
|
|||
<Instance ModuleGuid="fd44e603-002a-4b29-9f5f-529e815b6165" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
<Instance ModuleGuid="556f5d10-7309-4af4-b80a-8196bd60946f" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
<Instance ModuleGuid="a86fbfca-0183-4eeb-aa8a-762e3b7da1f3" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
<Instance ModuleGuid="55c61087-7367-4546-bc32-4937c5e6aff3" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
<Instance ModuleGuid="9ba1d976-0624-41a3-8650-28165e8d9ae8" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
</Libraries>
|
||||
<PcdBuildDefinition>
|
||||
|
@ -192,14 +191,6 @@
|
|||
<MaxDatumSize>4</MaxDatumSize>
|
||||
<Value>10000000</Value>
|
||||
</PcdData>
|
||||
<PcdData ItemType="FIXED_AT_BUILD">
|
||||
<C_Name>PcdReportStatusCodePropertyMask</C_Name>
|
||||
<Token>0x00000007</Token>
|
||||
<TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
|
||||
<DatumType>UINT8</DatumType>
|
||||
<MaxDatumSize>1</MaxDatumSize>
|
||||
<Value>0x06</Value>
|
||||
</PcdData>
|
||||
<PcdData ItemType="FIXED_AT_BUILD">
|
||||
<C_Name>PcdDebugPropertyMask</C_Name>
|
||||
<Token>0x00000005</Token>
|
||||
|
|
|
@ -422,6 +422,69 @@ Returns:
|
|||
|
||||
#define BYTES_PER_RECORD 512
|
||||
|
||||
/**
|
||||
Extracts ASSERT() information from a status code structure.
|
||||
|
||||
Converts the status code specified by CodeType, Value, and Data to the ASSERT()
|
||||
arguments specified by Filename, Description, and LineNumber. If CodeType is
|
||||
an EFI_ERROR_CODE, and CodeType has a severity of EFI_ERROR_UNRECOVERED, and
|
||||
Value has an operation mask of EFI_SW_EC_ILLEGAL_SOFTWARE_STATE, extract
|
||||
Filename, Description, and LineNumber from the optional data area of the
|
||||
status code buffer specified by Data. The optional data area of Data contains
|
||||
a Null-terminated ASCII string for the FileName, followed by a Null-terminated
|
||||
ASCII string for the Description, followed by a 32-bit LineNumber. If the
|
||||
ASSERT() information could be extracted from Data, then return TRUE.
|
||||
Otherwise, FALSE is returned.
|
||||
|
||||
If Data is NULL, then ASSERT().
|
||||
If Filename is NULL, then ASSERT().
|
||||
If Description is NULL, then ASSERT().
|
||||
If LineNumber is NULL, then ASSERT().
|
||||
|
||||
@param CodeType The type of status code being converted.
|
||||
@param Value The status code value being converted.
|
||||
@param Data Pointer to status code data buffer.
|
||||
@param Filename Pointer to the source file name that generated the ASSERT().
|
||||
@param Description Pointer to the description of the ASSERT().
|
||||
@param LineNumber Pointer to source line number that generated the ASSERT().
|
||||
|
||||
@retval TRUE The status code specified by CodeType, Value, and Data was
|
||||
converted ASSERT() arguments specified by Filename, Description,
|
||||
and LineNumber.
|
||||
@retval FALSE The status code specified by CodeType, Value, and Data could
|
||||
not be converted to ASSERT() arguments.
|
||||
|
||||
**/
|
||||
STATIC
|
||||
BOOLEAN
|
||||
ReportStatusCodeExtractAssertInfo (
|
||||
IN EFI_STATUS_CODE_TYPE CodeType,
|
||||
IN EFI_STATUS_CODE_VALUE Value,
|
||||
IN CONST EFI_STATUS_CODE_DATA *Data,
|
||||
OUT CHAR8 **Filename,
|
||||
OUT CHAR8 **Description,
|
||||
OUT UINT32 *LineNumber
|
||||
)
|
||||
{
|
||||
EFI_DEBUG_ASSERT_DATA *AssertData;
|
||||
|
||||
ASSERT (Data != NULL);
|
||||
ASSERT (Filename != NULL);
|
||||
ASSERT (Description != NULL);
|
||||
ASSERT (LineNumber != NULL);
|
||||
|
||||
if (((CodeType & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) &&
|
||||
((CodeType & EFI_STATUS_CODE_SEVERITY_MASK) == EFI_ERROR_UNRECOVERED) &&
|
||||
((Value & EFI_STATUS_CODE_OPERATION_MASK) == EFI_SW_EC_ILLEGAL_SOFTWARE_STATE)) {
|
||||
AssertData = (EFI_DEBUG_ASSERT_DATA *)(Data + 1);
|
||||
*Filename = (CHAR8 *)(AssertData + 1);
|
||||
*Description = *Filename + AsciiStrLen (*Filename) + 1;
|
||||
*LineNumber = AssertData->LineNumber;
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
SecPeiReportStatusCode (
|
||||
|
|
|
@ -34,9 +34,6 @@
|
|||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
||||
<Keyword>PrintLib</Keyword>
|
||||
</LibraryClass>
|
||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
||||
<Keyword>ReportStatusCodeLib</Keyword>
|
||||
</LibraryClass>
|
||||
<LibraryClass Usage="ALWAYS_CONSUMED">
|
||||
<Keyword>PcdLib</Keyword>
|
||||
</LibraryClass>
|
||||
|
|
|
@ -56,14 +56,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||
<property name="PACKAGE_GUID" value="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
<property name="PACKAGE_VERSION" value=""/>
|
||||
</GenBuild>
|
||||
<GenBuild type="build">
|
||||
<property name="ARCH" value="${ARCH}"/>
|
||||
<property name="MODULE_GUID" value="55c61087-7367-4546-bc32-4937c5e6aff3"/>
|
||||
<property name="MODULE_VERSION" value=""/>
|
||||
<property name="PLATFORM" value="${PLATFORM}"/>
|
||||
<property name="PACKAGE_GUID" value="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
||||
<property name="PACKAGE_VERSION" value=""/>
|
||||
</GenBuild>
|
||||
<GenBuild type="build">
|
||||
<property name="ARCH" value="${ARCH}"/>
|
||||
<property name="MODULE_GUID" value="9ba1d976-0624-41a3-8650-28165e8d9ae8"/>
|
||||
|
|
Loading…
Reference in New Issue