MdePkg[all]  1.08
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
GuidedSectionExtraction.h File Reference

Data Structures

struct  _EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI
 

Typedefs

typedef struct
_EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI 
EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI
 
typedef EFI_STATUS(EFIAPIEFI_PEI_EXTRACT_GUIDED_SECTION )(IN CONST EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI *This, IN CONST VOID *InputSection, OUT VOID **OutputBuffer, OUT UINTN *OutputSize, OUT UINT32 *AuthenticationStatus)
 

Detailed Description

If a GUID-defined section is encountered when doing section extraction, the PEI Foundation or the EFI_PEI_FILE_LOADER_PPI instance calls the appropriate instance of the GUIDed Section Extraction PPI to extract the section stream contained therein.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
This PPI is introduced in PI Version 1.0.

Typedef Documentation

typedef EFI_STATUS(EFIAPI * EFI_PEI_EXTRACT_GUIDED_SECTION)(IN CONST EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI *This, IN CONST VOID *InputSection, OUT VOID **OutputBuffer, OUT UINTN *OutputSize, OUT UINT32 *AuthenticationStatus)

Processes the input section and returns the data contained therein along with the authentication status.

The ExtractSection() function processes the input section and returns a pointer to the section contents. If the section being extracted does not require processing (if the section GuidedSectionHeader.Attributes has the EFI_GUIDED_SECTION_PROCESSING_REQUIRED field cleared), then OutputBuffer is just updated to point to the start of the section's contents. Otherwise, *Buffer must be allocated from PEI permanent memory.

Parameters
ThisIndicates the EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI instance.
InputSectionBuffer containing the input GUIDed section to be processed.
OutputBuffer*OutputBuffer is allocated from PEI permanent memory and contains the new section stream.
OutputSizeA pointer to a caller-allocated UINTN in which the size of *OutputBuffer allocation is stored. If the function returns anything other than EFI_SUCCESS, the value of *OutputSize is undefined.
AuthenticationStatusA pointer to a caller-allocated UINT32 that indicates the authentication status of the output buffer. If the input section's GuidedSectionHeader.Attributes field has the EFI_GUIDED_SECTION_AUTH_STATUS_VALID bit as clear, AuthenticationStatus must return zero. These bits reflect the status of the extraction operation. If the function returns anything other than EFI_SUCCESS, the value of *AuthenticationStatus is undefined.
Return values
EFI_SUCCESSThe InputSection was successfully processed and the section contents were returned.
EFI_OUT_OF_RESOURCESThe system has insufficient resources to process the request.
EFI_INVALID_PARAMETERThe GUID in InputSection does not match this instance of the GUIDed Section Extraction PPI.