Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

126 lines
2.4 KiB

/*++
Copyright (c) 2000 Microsoft Corporation
Module Name:
hmgr.hxx
Abstract:
This header file declares handle manager related functions.
Author:
JasonHa
--*/
#ifndef _HMGR_HXX_
#define _HMGR_HXX_
#include "flags.hxx"
extern char *pszTypes[];
extern char *pszTypes2[];
#define TOTAL_TYPE (MAX_TYPE+1)
#define ANY_TYPE -1
HRESULT GetEntryPhysicalAddress(PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 Address);
HRESULT GetObjectAddress(PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 Address,
UCHAR ExpectedType = ANY_TYPE,
BOOL ValidateFullUnique = TRUE,
BOOL ValidateBaseObj = TRUE);
HRESULT GetObjectHandle(PDEBUG_CLIENT Client,
ULONG64 ObjectAddr,
PULONG64 Handle64,
BOOL ValidateHandle = TRUE,
UCHAR ExpectedType = ANY_TYPE);
HRESULT
GetMaxHandles(
PDEBUG_CLIENT Client,
PULONG64 MaxHandles
);
#define GET_BITS_UNSHIFTED 1
#define GET_BITS_DEFAULT 0
HRESULT
GetIndexFromHandle(
PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 Index
);
HRESULT
GetTypeFromHandle(
PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 Type,
FLONG Flags = GET_BITS_DEFAULT
);
HRESULT
GetAltTypeFromHandle(
PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 AltType,
FLONG Flags = GET_BITS_DEFAULT
);
HRESULT
GetFullTypeFromHandle(
PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 FullType,
FLONG Flags = GET_BITS_DEFAULT
);
HRESULT
GetStockFromHandle(
PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 Stock,
FLONG Flags = GET_BITS_DEFAULT
);
HRESULT
GetFullUniqueFromHandle(
PDEBUG_CLIENT Client,
ULONG64 Handle64,
PULONG64 FullUnique,
FLONG Flags = GET_BITS_DEFAULT
);
HRESULT
OutputHandleInfo(
OutputControl *OutCtl,
PDEBUG_CLIENT Client,
PDEBUG_VALUE Handle
);
HRESULT
OutputFullUniqueInfo(
OutputControl *OutCtl,
PDEBUG_CLIENT Client,
PDEBUG_VALUE FullUnique
);
void HmgrInit(PDEBUG_CLIENT);
void HmgrExit();
#endif _HMGR_HXX_