From 9ab4328c9d37f43b71b91d87d81742a952d9f128 Mon Sep 17 00:00:00 2001 From: Rafal Kupiec Date: Thu, 25 Jan 2024 22:06:24 +0100 Subject: [PATCH] Update XTBL_EXECUTABLE_IMAGE_PROTOCOL structure --- sdk/xtdk/bltypes.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sdk/xtdk/bltypes.h b/sdk/xtdk/bltypes.h index 85ea5e3..d1669bf 100644 --- a/sdk/xtdk/bltypes.h +++ b/sdk/xtdk/bltypes.h @@ -63,9 +63,12 @@ typedef VOID (XTAPI *PBL_COPY_MEMORY)(OUT PVOID Destination, IN PCVOID Source, I typedef VOID (*PBL_DEBUG_PRINT)(IN PUINT16 Format, IN ...); typedef EFI_STATUS (*PBL_EXECIMAGE_GET_ENTRY_POINT)(IN PVOID ImagePointer, OUT PVOID *EntryPoint); typedef EFI_STATUS (*PBL_EXECIMAGE_GET_MACHINE_TYPE)(IN PVOID ImagePointer, OUT PUSHORT MachineType); +typedef EFI_STATUS (*PBL_EXECIMAGE_GET_SECTION)(IN PVOID ImagePointer, IN PCHAR SectionName, OUT PULONG *RawData); typedef EFI_STATUS (*PBL_EXECIMAGE_GET_SUBSYSTEM)(IN PVOID ImagePointer, OUT PUSHORT SubSystem); +typedef EFI_STATUS (*PBL_EXECIMAGE_GET_VERSION)(IN PVOID ImagePointer, OUT PUSHORT Version); typedef EFI_STATUS (*PBL_EXECIMAGE_LOAD_IMAGE)(IN PEFI_FILE_HANDLE FileHandle, IN LOADER_MEMORY_TYPE MemoryType, IN PVOID VirtualAddress, OUT PVOID *ImagePointer); typedef EFI_STATUS (*PBL_EXECIMAGE_RELOCATE_IMAGE)(IN PVOID ImagePointer, IN EFI_VIRTUAL_ADDRESS Address); +typedef EFI_STATUS (*PBL_EXECIMAGE_VERIFY_IMAGE)(IN PVOID ImagePointer); typedef EFI_STATUS (*PBL_EXIT_BOOT_SERVICES)(); typedef EFI_STATUS (*PBL_FIND_BOOT_PROTOCOL)(IN PWCHAR SystemType, OUT PEFI_GUID BootProtocolGuid); typedef EFI_STATUS (*PBL_FREE_PAGES)(IN UINT64 Size, IN EFI_PHYSICAL_ADDRESS Memory); @@ -211,13 +214,12 @@ typedef struct _XTBL_EXECUTABLE_IMAGE_PROTOCOL { PBL_EXECIMAGE_GET_ENTRY_POINT GetEntryPoint; PBL_EXECIMAGE_GET_MACHINE_TYPE GetMachineType; - // PBL_EXECIMAGE_GET_SECTION GetSection; + PBL_EXECIMAGE_GET_SECTION GetSection; PBL_EXECIMAGE_GET_SUBSYSTEM GetSubSystem; - // PBL_EXECIMAGE_GET_VERSION GetVersion; + PBL_EXECIMAGE_GET_VERSION GetVersion; PBL_EXECIMAGE_LOAD_IMAGE LoadImage; - // PBL_EXECIMAGE_PRINT_INFO PrintDebugInfo; PBL_EXECIMAGE_RELOCATE_IMAGE RelocateImage; - // PBL_EXECUTABLE_VERIFY_IMAGE VerifyImage; + PBL_EXECIMAGE_VERIFY_IMAGE VerifyImage; } XTBL_EXECUTABLE_IMAGE_PROTOCOL, *PXTBL_EXECUTABLE_IMAGE_PROTOCOL; /* XTLDR Loader protocol */