/**************************************************************************** Copyright (c) Microsoft Corporation 1999 All rights reserved ***************************************************************************/ // // Defines for moving pointers to proper alignment within a buffer // #define ALIGN_DOWN_POINTER(address, type) \ ((PVOID)((ULONG_PTR)(address) & ~((ULONG_PTR)sizeof(type) - 1))) #define ALIGN_UP_POINTER(address, type) \ (ALIGN_DOWN_POINTER(((ULONG_PTR)(address) + sizeof(type) - 1), type)) // // Routines defined in the lib // DWORD RCCLibInit( OUT PVOID *GlobalBuffer, OUT PULONG GlobalBufferSize ); VOID RCCLibExit( IN PVOID GlobalBuffer, IN ULONG GlobalBufferSize ); DWORD RCCLibIncreaseMemory( OUT PVOID *GlobalBuffer, OUT PULONG GlobalBufferCurrentSize ); DWORD RCCLibGetTListInfo( OUT PRCC_RSP_TLIST ResponseBuffer, IN LONG ResponseBufferSize, OUT PULONG ResponseDataSize ); DWORD RCCLibKillProcess( DWORD Pid ); DWORD RCCLibLowerProcessPriority( DWORD Pid ); DWORD RCCLibLimitProcessMemory( DWORD ProcessId, DWORD MemoryLimit );