Initial PE/COFF support for loading image files
All checks were successful
ci/woodpecker/push/build Pipeline was successful
All checks were successful
ci/woodpecker/push/build Pipeline was successful
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtldr/includes/blmod.h
|
||||
* DESCRIPTION: Top level header for XTLDR modules
|
||||
* DESCRIPTION: Top level header for XTLDR modules support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
*/
|
||||
|
||||
@@ -14,4 +14,16 @@
|
||||
#include <blproto.h>
|
||||
|
||||
|
||||
/* Structures forward declarations */
|
||||
typedef struct _XT_PECOFFF_IMAGE_PROTOCOL XT_PECOFF_IMAGE_PROTOCOL, *PXT_PECOFF_IMAGE_PROTOCOL;
|
||||
|
||||
/* Pointers to the routines provided by the modules */
|
||||
typedef EFI_STATUS (*PXT_PECOFF_PROTOCOL_LOAD)(IN PEFI_FILE_HANDLE FileHandle, IN PVOID VirtualAddress, OUT PPECOFF_IMAGE_CONTEXT *Image);
|
||||
|
||||
/* EFI XT PE/COFF Image Protocol */
|
||||
typedef struct _XT_PECOFFF_IMAGE_PROTOCOL
|
||||
{
|
||||
PXT_PECOFF_PROTOCOL_LOAD Load;
|
||||
} XT_PECOFF_IMAGE_PROTOCOL, *PXT_PECOFF_IMAGE_PROTOCOL;
|
||||
|
||||
#endif /* __XTLDR_BLMOD_H */
|
||||
|
@@ -14,6 +14,10 @@
|
||||
|
||||
|
||||
/* Loader protocol routine pointers */
|
||||
typedef EFI_STATUS (*PBL_ALLOCATE_PAGES)(IN UINT64 Size, OUT PEFI_PHYSICAL_ADDRESS Memory);
|
||||
typedef EFI_STATUS (*PBL_ALLOCATE_POOL)(IN UINT_PTR Size, OUT PVOID *Memory);
|
||||
typedef EFI_STATUS (*PBL_FREE_PAGES)(IN UINT64 Size, IN EFI_PHYSICAL_ADDRESS Memory);
|
||||
typedef EFI_STATUS (*PBL_FREE_POOL)(IN PVOID Memory);
|
||||
typedef VOID (*PBL_DBG_PRINT)(IN PUINT16 Format, IN ...);
|
||||
typedef VOID (*PBL_EFI_PRINT)(IN PUINT16 Format, IN ...);
|
||||
typedef EFI_STATUS (*PBL_CLOSE_VOLUME)(IN PEFI_HANDLE VolumeHandle);
|
||||
@@ -22,6 +26,10 @@ typedef EFI_STATUS (*PBL_OPEN_VOLUME)(IN PEFI_DEVICE_PATH_PROTOCOL DevicePath, O
|
||||
/* EFI XT Boot Loader Protocol */
|
||||
typedef struct _XT_BOOT_LOADER_PROTOCOL
|
||||
{
|
||||
PBL_ALLOCATE_PAGES AllocatePages;
|
||||
PBL_ALLOCATE_POOL AllocatePool;
|
||||
PBL_FREE_PAGES FreePages;
|
||||
PBL_FREE_POOL FreePool;
|
||||
PBL_DBG_PRINT DbgPrint;
|
||||
PBL_EFI_PRINT EfiPrint;
|
||||
PBL_CLOSE_VOLUME CloseVolume;
|
||||
|
Reference in New Issue
Block a user