EDK2 doxygen online documents - Firmware Encoding Index 1
EDK2 doxygen online documents - Firmware Encoding Index
Data Fields

PE_COFF_LOADER_IMAGE_CONTEXT Struct Reference

#include <PeCoffLib.h>

Data Fields

PHYSICAL_ADDRESS ImageAddress
UINT64 ImageSize
PHYSICAL_ADDRESS DestinationAddress
PHYSICAL_ADDRESS EntryPoint
PE_COFF_LOADER_READ_FILE ImageRead
VOID * Handle
VOID * FixupData
UINT32 SectionAlignment
UINT32 PeCoffHeaderOffset
UINT32 DebugDirectoryEntryRva
VOID * CodeView
CHAR8PdbPointer
UINTN SizeOfHeaders
UINT32 ImageCodeMemoryType
UINT32 ImageDataMemoryType
UINT32 ImageError
UINTN FixupDataSize
UINT16 Machine
UINT16 ImageType
BOOLEAN RelocationsStripped
BOOLEAN IsTeImage
PHYSICAL_ADDRESS HiiResourceData
UINT64 Context
BOOLEAN IsFat
UINT32 FatOffset

Detailed Description

The context structure used while PE/COFF image is being loaded and relocated.

Context structure used while PE/COFF image is being loaded and relocated

Definition at line 52 of file PeCoffLib.h.


Field Documentation

VOID * CodeView

Set by PeCoffLoaderLoadImage() to CodeView area of the PE/COFF Debug directory.

Definition at line 63 of file PeCoffLib.h.

Private storage for implementation specific data.

Definition at line 198 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to the Relative Virtual Address of the debug directory, if it exists in the image

Set by PeCoffLoaderGetImageInfo() to the Relative Virtual Address of the debug directory if it exists in the image

Definition at line 62 of file PeCoffLib.h.

Is set to zero by PeCoffLoaderGetImageInfo(). If DestinationAddress is non-zero, PeCoffLoaderRelocateImage() will relocate the image using this base address. If the DestinationAddress is zero, the ImageAddress will be used as the base address of relocation.

Is set to zero by PeCoffLoaderGetImageInfo(). If DestinationAddress is non zero, PeCoffLoaderRelocateImage() will relocate the image using this base address. If the DestinationAddress is zero, the ImageAddress will be used as the base address of relocation.

Definition at line 55 of file PeCoffLib.h.

PeCoffLoaderLoadImage() sets EntryPoint to to the entry point of the PE/COFF image.

Definition at line 56 of file PeCoffLib.h.

Definition at line 199 of file PeCoffLib.h.

VOID * FixupData

Caller allocated buffer of size FixupDataSize that can be optionally allocated prior to calling PeCoffLoaderRelocateImage(). This buffer is filled with the information used to fix up the image. The fixups have been applied to the image and this entry is just for information.

Definition at line 59 of file PeCoffLib.h.

Set by PeCoffLoaderLoadImage() to indicate the size of FixupData that the caller must allocate before calling PeCoffLoaderRelocateImage().

Set by PeCoffLoaderLoadImage() to indicate the size of FixupData that the caller must allocate before calling PeCoffLoaderRelocateImage()

Definition at line 69 of file PeCoffLib.h.

VOID * Handle

Used as the FileHandle passed into the ImageRead function when it's called.

Definition at line 58 of file PeCoffLib.h.

Set by PeCoffLoaderLoadImage() to the HII resource offset if the image contains a custom PE/COFF resource with the type 'HII'. Otherwise, the entry remains to be 0.

Set by PeCoffLoaderLoadImage() to the HII resource offset if the image contains a custom PE/COFF resource with the type 'HII'; otherwise, the entry remains to be 0.

Definition at line 194 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to the ImageBase in the PE/COFF header.

Is set by PeCoffLoaderGetImageInfo() to the ImageBase in the PE/COFF header

Definition at line 53 of file PeCoffLib.h.

Not used by this library class. Other library classes that layer on top of this library class fill in this value as part of their GetImageInfo call. This allows the caller of the library to know what type of memory needs to be allocated to load and relocate the image.

Definition at line 66 of file PeCoffLib.h.

Not used by this library class. Other library classes that layer on top of this library class fill in this value as part of their GetImageInfo call. This allows the caller of the library to know what type of memory needs to be allocated to load and relocate the image.

Not used by this library class. Other library classes that layer on top of this library class fill in this value as part of their GetImageInfo call. This allows the caller of the library to know what type of memory needs to be allocated to load and relocate the image

Definition at line 67 of file PeCoffLib.h.

Set by any of the library functions if they encounter an error.

Definition at line 68 of file PeCoffLib.h.

Passed in by the caller to PeCoffLoaderGetImageInfo() and PeCoffLoaderLoadImage() to abstract accessing the image from the library.

Definition at line 57 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to the SizeOfImage in the PE/COFF header. Image size includes the size of Debug Entry if it is present.

Is set by PeCoffLoaderGetImageInfo() to the SizeOfImage in the PE/COFF header. Image size includes the size of Debug Entry if it is present.

Definition at line 54 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to the subsystem type stored in the PE/COFF header.

Definition at line 71 of file PeCoffLib.h.

Private storage for implementation specific data.

Definition at line 198 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to TRUE if the image is a TE image. For a definition of the TE Image format, see the Platform Initialization Pre-EFI Initialization Core Interface Specification.

Definition at line 73 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to the machine type stored in the PE/COFF header.

Set by PeCoffLoaderGetImageInfo() to the machine type stored in the PE/COFF header

Definition at line 70 of file PeCoffLib.h.

Set by PeCoffLoaderLoadImage() to point to the PDB entry contained in the CodeView area. The PdbPointer points to the filename of the PDB file used for source-level debug of the image by a debugger.

Definition at line 64 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to offset to the PE/COFF header. If the PE/COFF image does not start with a DOS header, this value is zero. Otherwise, it's the offset to the PE/COFF header.

Set by PeCoffLoaderGetImageInfo() to offset to the PE/COFF header. If the PE/COFF image does not start with a DOS header, this value is zero; otherwise, it's the offset to the PE/COFF header.

Definition at line 61 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to TRUE if the PE/COFF image does not contain relocation information.

Definition at line 72 of file PeCoffLib.h.

Set by PeCoffLoaderGetImageInfo() to the Section Alignment in the PE/COFF header. If the image is a TE image, then this field is set to 0.

Is set by PeCoffLoaderGetImageInfo() to the Section Alignment in the PE/COFF header If the image is a TE image, then this field is set to 0.

Definition at line 60 of file PeCoffLib.h.

Is set by PeCoffLoaderGetImageInfo() to the Section Alignment in the PE/COFF header.

Definition at line 65 of file PeCoffLib.h.


The documentation for this struct was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines