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.
|
|
/*++
Copyright (c) 2000 Microsoft Corporation
Module Name:
session.hxx
Abstract:
This file declares routines to handle sessions.
Author:
Jason Hartman (JasonHa) 2000-12-21
Environment:
User Mode
--*/
#ifndef _SESSION_HXX_
#define _SESSION_HXX_
#include "typeout.hxx"
#define CURRENT_SESSION -1
#define DEFAULT_SESSION -2
#define INVALID_SESSION -3
typedef HRESULT (* PoolFilterFunc)( OutputControl *OutCtl, ULONG64 PoolAddr, ULONG TagFilter, TypeOutputParser *PoolHeadReader, PDEBUG_VALUE Tag, ULONG BlockSize, BOOL bQuotaWithTag, PVOID Context );
typedef struct _ALLOCATION_STATS { ULONG AllocatedPages; ULONG LargePages; ULONG LargeAllocs; ULONG FreePages; ULONG ExpansionPages; ULONG Allocated; // Number of allocated entries
ULONG AllocatedSize; // Size in Pool Blocks
ULONG Free; // Number of free entries
ULONG FreeSize; // Size in Pool Blocks
ULONG Indeterminate; // Number of entries with interdeterminable alloc/free status
ULONG IndeterminateSize; // Size in Pool Blocks
} ALLOCATION_STATS, *PALLOCATION_STATS;
extern ULONG SessionId; extern CHAR SessionStr[16];
void SessionInit(PDEBUG_CLIENT Client); void SessionExit();
HRESULT GetPhysicalAddress( PDEBUG_CLIENT Client, ULONG Session, ULONG64 VirtAddr, PULONG64 PhysAddr );
HRESULT GetCurrentSession( PDEBUG_CLIENT Client, PULONG64 CurSessionSpace, PULONG CurSessionId );
HRESULT GetSessionSpace( PDEBUG_CLIENT Client, ULONG Session, PULONG64 SessionSpace );
#define SEARCH_POOL_NONPAGED 0x0001
#define SEARCH_POOL_PAGED 0x0002
#define SEARCH_POOL_LARGE_ONLY 0x0004
#define SEARCH_POOL_PRINT_LARGE 0x0008
#define SEARCH_POOL_PRINT_UNREAD 0x0010
HRESULT SearchSessionPool( PDEBUG_CLIENT Client, ULONG Session, ULONG TagName, FLONG Flags, ULONG64 RestartAddr, PoolFilterFunc Filter, PALLOCATION_STATS AllocStats, PVOID Context );
#endif _SESSION_HXX_
|