Process Hacker
|
Go to the source code of this file.
Data Structures | |
struct | _PH_HANDLE_TABLE |
Macros | |
#define | PH_HANDLE_TABLE_ENTRY_TYPE 0x1 |
#define | PH_HANDLE_TABLE_ENTRY_IN_USE 0x0 |
#define | PH_HANDLE_TABLE_ENTRY_FREE 0x1 |
#define | PH_HANDLE_TABLE_ENTRY_LOCKED 0x2 |
#define | PH_HANDLE_TABLE_ENTRY_LOCKED_SHIFT 1 |
#define | PH_HANDLE_TABLE_LEVEL_ENTRIES 256 |
#define | PH_HANDLE_TABLE_LEVEL_MASK 0x3 |
#define | PH_HANDLE_TABLE_LOCKS 8 |
#define | PH_HANDLE_TABLE_LOCK_INDEX(HandleValue) ((HandleValue) % PH_HANDLE_TABLE_LOCKS) |
#define | PH_HANDLE_VALUE_INVALID ((ULONG)-1) |
#define | PH_HANDLE_VALUE_SHIFT 2 |
#define | PH_HANDLE_VALUE_BIAS 4 |
#define | PH_HANDLE_VALUE_LEVEL0(HandleValue) ((HandleValue) & 0xff) |
#define | PH_HANDLE_VALUE_LEVEL1_U(HandleValue) ((HandleValue) >> 8) |
#define | PH_HANDLE_VALUE_LEVEL1(HandleValue) (PH_HANDLE_VALUE_LEVEL1_U(HandleValue) & 0xff) |
#define | PH_HANDLE_VALUE_LEVEL2_U(HandleValue) ((HandleValue) >> 16) |
#define | PH_HANDLE_VALUE_LEVEL2(HandleValue) (PH_HANDLE_VALUE_LEVEL2_U(HandleValue) & 0xff) |
#define | PH_HANDLE_VALUE_IS_INVALID(HandleValue) (((HandleValue) >> 24) != 0) |
Typedefs | |
typedef struct _PH_HANDLE_TABLE | PH_HANDLE_TABLE |
typedef struct _PH_HANDLE_TABLE * | PPH_HANDLE_TABLE |
#define PH_HANDLE_TABLE_LOCK_INDEX | ( | HandleValue | ) | ((HandleValue) % PH_HANDLE_TABLE_LOCKS) |
#define PH_HANDLE_VALUE_IS_INVALID | ( | HandleValue | ) | (((HandleValue) >> 24) != 0) |
#define PH_HANDLE_VALUE_LEVEL0 | ( | HandleValue | ) | ((HandleValue) & 0xff) |
#define PH_HANDLE_VALUE_LEVEL1 | ( | HandleValue | ) | (PH_HANDLE_VALUE_LEVEL1_U(HandleValue) & 0xff) |
#define PH_HANDLE_VALUE_LEVEL1_U | ( | HandleValue | ) | ((HandleValue) >> 8) |
#define PH_HANDLE_VALUE_LEVEL2 | ( | HandleValue | ) | (PH_HANDLE_VALUE_LEVEL2_U(HandleValue) & 0xff) |
#define PH_HANDLE_VALUE_LEVEL2_U | ( | HandleValue | ) | ((HandleValue) >> 16) |
typedef struct _PH_HANDLE_TABLE PH_HANDLE_TABLE |
typedef struct _PH_HANDLE_TABLE * PPH_HANDLE_TABLE |
PPH_HANDLE_TABLE_ENTRY PhpAllocateHandleTableEntry | ( | _Inout_ PPH_HANDLE_TABLE | HandleTable, |
_Out_ PULONG | HandleValue | ||
) |
BOOLEAN PhpAllocateMoreHandleTableEntries | ( | _In_ PPH_HANDLE_TABLE | HandleTable, |
_In_ BOOLEAN | Initialize | ||
) |
VOID PhpBlockOnLockedHandleTableEntry | ( | _Inout_ PPH_HANDLE_TABLE | HandleTable, |
_In_ PPH_HANDLE_TABLE_ENTRY | HandleTableEntry | ||
) |
PPH_HANDLE_TABLE_ENTRY PhpCreateHandleTableLevel0 | ( | _In_ PPH_HANDLE_TABLE | HandleTable, |
_In_ BOOLEAN | Initialize | ||
) |
PPH_HANDLE_TABLE_ENTRY* PhpCreateHandleTableLevel1 | ( | _In_ PPH_HANDLE_TABLE | HandleTable | ) |
PPH_HANDLE_TABLE_ENTRY** PhpCreateHandleTableLevel2 | ( | _In_ PPH_HANDLE_TABLE | HandleTable | ) |
FORCEINLINE HANDLE PhpEncodeHandle | ( | _In_ ULONG | HandleValue | ) |
VOID PhpFreeHandleTableEntry | ( | _Inout_ PPH_HANDLE_TABLE | HandleTable, |
_In_ ULONG | HandleValue, | ||
_Inout_ PPH_HANDLE_TABLE_ENTRY | HandleTableEntry | ||
) |
VOID PhpFreeHandleTableLevel0 | ( | _In_ PPH_HANDLE_TABLE_ENTRY | Table | ) |
VOID PhpFreeHandleTableLevel1 | ( | _In_ PPH_HANDLE_TABLE_ENTRY * | Table | ) |
VOID PhpFreeHandleTableLevel2 | ( | _In_ PPH_HANDLE_TABLE_ENTRY ** | Table | ) |
FORCEINLINE VOID PhpLockHandleTableShared | ( | _Inout_ PPH_HANDLE_TABLE | HandleTable, |
_In_ ULONG | Index | ||
) |
PPH_HANDLE_TABLE_ENTRY PhpLookupHandleTableEntry | ( | _In_ PPH_HANDLE_TABLE | HandleTable, |
_In_ ULONG | HandleValue | ||
) |
ULONG PhpMoveFreeHandleTableEntries | ( | _Inout_ PPH_HANDLE_TABLE | HandleTable | ) |
FORCEINLINE VOID PhpUnlockHandleTableShared | ( | _Inout_ PPH_HANDLE_TABLE | HandleTable, |
_In_ ULONG | Index | ||
) |