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.
|
|
/****************************** Module Header ******************************\ * Module Name: w32w64.h * * Copyright (c) Microsoft Corporation. All rights reserved. * * This header file contains macros used to access kernel mode data * from user mode for wow64. * * History: * 08-18-98 PeterHal Created. \***************************************************************************/
#ifndef _W32W64_ #define _W32W64_
/* * Kernel32 includes this structure, but we don't want to use _ptr64 in it yet. * Kernel32 does not use any shared memory itself. */ #if defined(BUILD_WOW6432) && !defined(_KERNEL32_)
#define KPTR_MODIFIER __ptr64
typedef VOID * __ptr64 KERNEL_PVOID; typedef unsigned __int64 KERNEL_UINT_PTR; typedef __int64 KERNEL_INT_PTR; typedef unsigned __int64 KERNEL_ULONG_PTR; typedef __int64 KERNEL_LONG_PTR;
#define KHANDLE_NULL 0
#ifdef STRICT typedef void * KPTR_MODIFIER KHANDLE; #define DECLARE_KHANDLE(name) typedef struct name##__ * KPTR_MODIFIER K ## name #else typedef KERNEL_PVOID KHANDLE; #define DECLARE_KHANDLE(name) typedef KHANDLE K ## name #endif
#else
#define KPTR_MODIFIER
typedef PVOID KERNEL_PVOID; typedef UINT_PTR KERNEL_UINT_PTR; typedef INT_PTR KERNEL_INT_PTR; typedef ULONG_PTR KERNEL_ULONG_PTR; typedef LONG_PTR KERNEL_LONG_PTR;
#define KHANDLE_NULL NULL
#define DECLARE_KHANDLE(name) typedef name K ## name typedef HANDLE KHANDLE;
#endif
#endif // _W32W64_
|