Add handle table structures
This commit is contained in:
@@ -139,6 +139,56 @@ typedef struct _GENERAL_LOOKASIDE
|
|||||||
ULONG Future[2];
|
ULONG Future[2];
|
||||||
} GENERAL_LOOKASIDE, *PGENERAL_LOOKASIDE;
|
} GENERAL_LOOKASIDE, *PGENERAL_LOOKASIDE;
|
||||||
|
|
||||||
|
/* Handle table entry structure definition */
|
||||||
|
typedef struct _HANDLE_TABLE_ENTRY
|
||||||
|
{
|
||||||
|
union
|
||||||
|
{
|
||||||
|
PVOID Object;
|
||||||
|
ULONG_PTR ObAttributes;
|
||||||
|
PHANDLE_TABLE_ENTRY_INFO InfoTable;
|
||||||
|
ULONG_PTR Value;
|
||||||
|
};
|
||||||
|
union
|
||||||
|
{
|
||||||
|
ULONG GrantedAccess;
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
USHORT GrantedAccessIndex;
|
||||||
|
USHORT CreatorBackTraceIndex;
|
||||||
|
};
|
||||||
|
LONG NextFreeTableEntry;
|
||||||
|
};
|
||||||
|
} HANDLE_TABLE_ENTRY, *PHANDLE_TABLE_ENTRY;
|
||||||
|
|
||||||
|
/* Handle table entry info structure definition */
|
||||||
|
typedef struct _HANDLE_TABLE_ENTRY_INFO
|
||||||
|
{
|
||||||
|
ULONG AuditMask;
|
||||||
|
} HANDLE_TABLE_ENTRY_INFO, *PHANDLE_TABLE_ENTRY_INFO;
|
||||||
|
|
||||||
|
/* Handle table structure definition */
|
||||||
|
typedef struct _HANDLE_TABLE
|
||||||
|
{
|
||||||
|
ULONG_PTR TableCode;
|
||||||
|
PEPROCESS QuotaProcess;
|
||||||
|
PVOID UniqueProcessId;
|
||||||
|
KPUSH_LOCK HandleTableLock[4];
|
||||||
|
LIST_ENTRY HandleTableList;
|
||||||
|
KPUSH_LOCK HandleContentionEvent;
|
||||||
|
PVOID Reserved;
|
||||||
|
LONG ExtraInfoPages;
|
||||||
|
union
|
||||||
|
{
|
||||||
|
ULONG Flags;
|
||||||
|
UCHAR StrictFIFO:1;
|
||||||
|
};
|
||||||
|
PHANDLE_TABLE_ENTRY FirstFreeHandle;
|
||||||
|
PHANDLE_TABLE_ENTRY LastFreeHandle;
|
||||||
|
LONG HandleCount;
|
||||||
|
ULONG NextHandleNeedingPool;
|
||||||
|
} HANDLE_TABLE, *PHANDLE_TABLE;
|
||||||
|
|
||||||
/* Lookaside list pointers structure definition */
|
/* Lookaside list pointers structure definition */
|
||||||
typedef struct _LOOKASIDE_LIST
|
typedef struct _LOOKASIDE_LIST
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -297,6 +297,9 @@ typedef struct _GENERAL_LOOKASIDE GENERAL_LOOKASIDE, *PGENERAL_LOOKASIDE;
|
|||||||
typedef struct _GENERIC_ADDRESS GENERIC_ADDRESS, *PGENERIC_ADDRESS;
|
typedef struct _GENERIC_ADDRESS GENERIC_ADDRESS, *PGENERIC_ADDRESS;
|
||||||
typedef struct _GENERIC_MAPPING GENERIC_MAPPING, *PGENERIC_MAPPING;
|
typedef struct _GENERIC_MAPPING GENERIC_MAPPING, *PGENERIC_MAPPING;
|
||||||
typedef struct _GUID GUID, *PGUID;
|
typedef struct _GUID GUID, *PGUID;
|
||||||
|
typedef struct _HANDLE_TABLE_ENTRY HANDLE_TABLE_ENTRY, *PHANDLE_TABLE_ENTRY;
|
||||||
|
typedef struct _HANDLE_TABLE_ENTRY_INFO HANDLE_TABLE_ENTRY_INFO, *PHANDLE_TABLE_ENTRY_INFO;
|
||||||
|
typedef struct _HANDLE_TABLE HANDLE_TABLE, *PHANDLE_TABLE;
|
||||||
typedef struct _HL_FRAMEBUFFER_DATA HL_FRAMEBUFFER_DATA, *PHL_FRAMEBUFFER_DATA;
|
typedef struct _HL_FRAMEBUFFER_DATA HL_FRAMEBUFFER_DATA, *PHL_FRAMEBUFFER_DATA;
|
||||||
typedef struct _HL_SCROLL_REGION_DATA HL_SCROLL_REGION_DATA, *PHL_SCROLL_REGION_DATA;
|
typedef struct _HL_SCROLL_REGION_DATA HL_SCROLL_REGION_DATA, *PHL_SCROLL_REGION_DATA;
|
||||||
typedef struct _INITIAL_PRIVILEGE_SET INITIAL_PRIVILEGE_SET, *PINITIAL_PRIVILEGE_SET;
|
typedef struct _INITIAL_PRIVILEGE_SET INITIAL_PRIVILEGE_SET, *PINITIAL_PRIVILEGE_SET;
|
||||||
|
|||||||
Reference in New Issue
Block a user