IntelFrameworkPkg/Include/Protocol/SectionExtraction.h File Reference


Data Structures

struct  _EFI_SECTION_EXTRACTION_PROTOCOL

Defines

#define EFI_SECTION_EXTRACTION_PROTOCOL_GUID

Typedefs

typedef struct
_EFI_SECTION_EXTRACTION_PROTOCOL 
EFI_SECTION_EXTRACTION_PROTOCOL
typedef EFI_STATUS(EFIAPI * EFI_OPEN_SECTION_STREAM )(IN EFI_SECTION_EXTRACTION_PROTOCOL *This, IN UINTN SectionStreamLength, IN VOID *SectionStream, OUT UINTN *SectionStreamHandle)
typedef EFI_STATUS(EFIAPI * EFI_GET_SECTION )(IN EFI_SECTION_EXTRACTION_PROTOCOL *This, IN UINTN SectionStreamHandle, IN EFI_SECTION_TYPE *SectionType, IN EFI_GUID *SectionDefinitionGuid, IN UINTN SectionInstance, IN VOID **Buffer, IN OUT UINTN *BufferSize, OUT UINT32 *AuthenticationStatus)
typedef EFI_STATUS(EFIAPI * EFI_CLOSE_SECTION_STREAM )(IN EFI_SECTION_EXTRACTION_PROTOCOL *This, IN UINTN SectionStreamHandle)

Variables

EFI_GUID gEfiSectionExtractionProtocolGuid

Detailed Description

This file declares Section Extraction Protocol.

This interface provides a means of decoding a set of sections into a linked list of leaf sections. This provides for an extensible and flexible file format.

Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License that accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Revision Reference:
This protocol is defined in Firmware Volume Specification. Version 0.9.

Define Documentation

#define EFI_SECTION_EXTRACTION_PROTOCOL_GUID

Value:

{ \
    0x448F5DA4, 0x6DD7, 0x4FE1, {0x93, 0x07, 0x69, 0x22, 0x41, 0x92, 0x21, 0x5D } \
  }


Typedef Documentation

typedef EFI_STATUS(EFIAPI * EFI_CLOSE_SECTION_STREAM)(IN EFI_SECTION_EXTRACTION_PROTOCOL *This, IN UINTN SectionStreamHandle)

Deletes a section stream handle and returns all associated resources to the system.

Parameters:
This Indicates the EFI_SECTION_EXTRACTION_PROTOCOL instance.
SectionStreamHandle Indicates the section stream to close.
Return values:
EFI_SUCCESS The SectionStream was successfully processed and the section stream handle was returned.
EFI_INVALID_PARAMETER The SectionStreamHandle does not exist.

typedef EFI_STATUS(EFIAPI * EFI_GET_SECTION)(IN EFI_SECTION_EXTRACTION_PROTOCOL *This, IN UINTN SectionStreamHandle, IN EFI_SECTION_TYPE *SectionType, IN EFI_GUID *SectionDefinitionGuid, IN UINTN SectionInstance, IN VOID **Buffer, IN OUT UINTN *BufferSize, OUT UINT32 *AuthenticationStatus)

Reads and returns a single section from a section stream.

Parameters:
This Indicates the EFI_SECTION_EXTRACTION_PROTOCOL instance.
SectionStreamHandle Indicates from which section stream to read.
SectionType The pointer to an EFI_SECTION_TYPE. If SectionType == NULL, the contents of the entire section stream are returned in Buffer. If SectionType is not NULL, only the requested section is returned. EFI_SECTION_ALL matches all section types and can be used as a wild card to extract all sections in order.
SectionDefinitionGuid The pointer to an EFI_GUID. If SectionType == EFI_SECTION_GUID_DEFINED, SectionDefinitionGuid indicates what section GUID to search for. If SectionType !=EFI_SECTION_GUID_DEFINED, then SectionDefinitionGuid is unused and is ignored.
SectionInstance Indicates which instance of the requested section type to return when SectionType is not NULL.
SectionStreamHandle A pointer to a caller-allocated UINTN that, on output, contains the new section stream handle.
Buffer Pointer to a pointer to a buffer in which the section contents are returned.
BufferSize A pointer to a caller-allocated UINTN.
AuthenticationStatus A pointer to a caller-allocated UINT32 in which any meta-data from encapsulation GUID-defined sections is returned.
Return values:
EFI_SUCCESS The SectionStream was successfully processed and the section contents were returned in Buffer.
EFI_PROTOCOL_ERROR A GUID-defined section was encountered inthe section stream with its EFI_GUIDED_SECTION_PROCESSING_REQUIRED bit set, but there was no corresponding GUIDed Section Extraction Protocol in the handle database.
EFI_NOT_FOUND An error was encountered when parsing the SectionStream, which indicates that the SectionStream is not correctly formatted. Or, the requested section does not exist.
EFI_OUT_OF_RESOURCES The system has insufficient resources to process the request.
EFI_INVALID_PARAMETER The SectionStreamHandle does not exist.
EFI_WARN_BUFFER_TOO_SMALL The size of the input buffer is insufficient to contain the requested section. The input buffer is filled and section contents are truncated.

typedef EFI_STATUS(EFIAPI * EFI_OPEN_SECTION_STREAM)(IN EFI_SECTION_EXTRACTION_PROTOCOL *This, IN UINTN SectionStreamLength, IN VOID *SectionStream, OUT UINTN *SectionStreamHandle)

Creates and returns a new section stream handle to represent the new section stream.

Parameters:
This Indicates the EFI_SECTION_EXTRACTION_PROTOCOL instance.
SectionStreamLength The size in bytes of the section stream.
SectionStream A buffer containing the new section stream.
SectionStreamHandle A pointer to a caller-allocated UINTN that, on output, contains the new section stream handle.
Return values:
EFI_SUCCESS The SectionStream was successfully processed, and the section stream handle was returned.
EFI_OUT_OF_RESOURCES The system has insufficient resources to process the request.
EFI_INVALID_PARAMETER The section stream may be corrupt or the value of SectionStreamLength may be incorrect.


Variable Documentation


Generated on Wed Sep 2 13:08:33 2015 for IntelFrameworkPkg[ALL] by  doxygen 1.5.7.1