Import loader structures definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful

This commit is contained in:
Rafal Kupiec 2022-11-15 20:16:23 +01:00
parent df5eab737b
commit 131275e788
Signed by: belliash
GPG Key ID: 4E829243E0CFE6B4
3 changed files with 75 additions and 0 deletions

73
sdk/xtdk/ldrtypes.h Normal file
View File

@ -0,0 +1,73 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: sdk/xtdk/ldrtypes.h
* DESCRIPTION: Loader structures definitions
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#ifndef __XTDK_LDRTYPES_H
#define __XTDK_LDRTYPES_H
#include "xtcommon.h"
/* Loader Data Table Entry Flags */
#define LDR_DTE_STATIC_LINK 0x00000002
#define LDR_DTE_IMAGE_DLL 0x00000004
#define LDR_DTE_SHIMENG_SUPPRESSED_ENTRY 0x00000008
#define LDR_DTE_IMAGE_INTEGRITY_FORCED 0x00000020
#define LDR_DTE_LOAD_IN_PROGRESS 0x00001000
#define LDR_DTE_UNLOAD_IN_PROGRESS 0x00002000
#define LDR_DTE_ENTRY_PROCESSED 0x00004000
#define LDR_DTE_ENTRY_INSERTED 0x00008000
#define LDR_DTE_CURRENT_LOAD 0x00010000
#define LDR_DTE_FAILED_BUILTIN_LOAD 0x00020000
#define LDR_DTE_DONT_CALL_FOR_THREADS 0x00040000
#define LDR_DTE_PROCESS_ATTACH_CALLED 0x00080000
#define LDR_DTE_DEBUG_SYMBOLS_LOADED 0x00100000
#define LDR_DTE_IMAGE_NOT_AT_BASE 0x00200000
#define LDR_DTE_COR_IMAGE 0x00400000
#define LDR_DTE_COR_OWNS_UNMAP 0x00800000
#define LDR_DTE_SYSTEM_MAPPED 0x01000000
#define LDR_DTE_IMAGE_VERIFYING 0x02000000
#define LDR_DTE_DRIVER_DEPENDENT_DLL 0x04000000
#define LDR_DTE_ENTRY_NATIVE 0x08000000
#define LDR_DTE_REDIRECTED 0x10000000
#define LDR_DTE_NON_PAGED_DEBUG_INFO 0x20000000
#define LDR_DTE_MM_LOADED 0x40000000
#define LDR_DTE_COMPAT_DATABASE_PROCESSED 0x80000000
/* Loader data table entry */
typedef struct _LDR_DATA_TABLE_ENTRY
{
LIST_ENTRY InLoadOrderLinks;
LIST_ENTRY InMemoryOrderLinks;
LIST_ENTRY InInitializationOrderLinks;
PVOID DllBase;
PVOID EntryPoint;
ULONG SizeOfImage;
UNICODE_STRING FullDllName;
UNICODE_STRING BaseDllName;
ULONG Flags;
USHORT LoadCount;
USHORT TlsIndex;
union
{
LIST_ENTRY HashLinks;
struct
{
PVOID SectionPointer;
ULONG CheckSum;
};
};
union
{
ULONG TimeDateStamp;
PVOID LoadedImports;
};
PVOID EntryPointActivationContext;
PVOID PatchInformation;
} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
#endif /* __XTDK_LDRTYPES_H */

View File

@ -26,6 +26,7 @@
/* Low level data types headers */
#include "rtltypes.h"
#include "ldrtypes.h"
#include "hltypes.h"
/* XT routines */

View File

@ -145,6 +145,7 @@ typedef struct _EFI_VLAN_DEVICE_PATH EFI_VLAN_DEVICE_PATH, *PEFI_VLAN_DEVICE_PAT
typedef struct _FIRMWARE_INFORMATION_BLOCK FIRMWARE_INFORMATION_BLOCK, *PFIRMWARE_INFORMATION_BLOCK;
typedef struct _GUID GUID, *PGUID;
typedef struct _KERNEL_INITIALIZATION_BLOCK KERNEL_INITIALIZATION_BLOCK, *PKERNEL_INITIALIZATION_BLOCK;
typedef struct _LDR_DATA_TABLE_ENTRY LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
typedef struct _LIST_ENTRY LIST_ENTRY, *PLIST_ENTRY;
typedef struct _LIST_ENTRY32 LIST_ENTRY32, *PLIST_ENTRY32;
typedef struct _LIST_ENTRY64 LIST_ENTRY64, *PLIST_ENTRY64;