ReactOS  0.4.11-dev-433-g473ca91
ntdef.template.h File Reference
#include <ctype.h>
#include <basetsd.h>
#include <guiddef.h>
#include <excpt.h>
#include <sdkddkver.h>
#include <specstrings.h>
#include <kernelspecs.h>
Include dependency graph for ntdef.template.h:

Go to the source code of this file.

Classes

struct  _QUAD
 
struct  _STRING
 
struct  _STRING32
 
struct  _STRING64
 
struct  _CSTRING
 
struct  _UNICODE_STRING
 
struct  _OBJECT_ATTRIBUTES
 
struct  _OBJECT_ATTRIBUTES32
 
struct  _OBJECT_ATTRIBUTES64
 
struct  _RTL_BALANCED_NODE
 

Macros

#define STRICT   1
 
#define IN
 
#define OUT
 
#define OPTIONAL
 
#define NOTHING
 
#define CRITICAL
 
#define CONST   const
 
#define FALSE   0
 
#define TRUE   1
 
#define NULL   ((void *)0)
 
#define NULL64   ((void * POINTER_64)0)
 
#define ARGUMENT_PRESENT(ArgumentPointer)   ((CHAR*)((ULONG_PTR)(ArgumentPointer)) != (CHAR*)NULL)
 
#define FASTCALL
 
#define min(a, b)   (((a) < (b)) ? (a) : (b))
 
#define max(a, b)   (((a) > (b)) ? (a) : (b))
 
#define BASETYPES
 
#define __SECSTATUS_DEFINED__
 
#define TIME   LARGE_INTEGER
 
#define _TIME   _LARGE_INTEGER
 
#define PTIME   PLARGE_INTEGER
 
#define LowTime   LowPart
 
#define HighTime   HighPart
 
#define _RTL_CONSTANT_STRING_remove_const_macro(s)   (s)
 
#define RTL_CONSTANT_STRING(s)
 
#define DECLARE_UNICODE_STRING_SIZE(_var, _size)
 
#define DECLARE_CONST_UNICODE_STRING(_var, _string)
 
#define DECLARE_GLOBAL_CONST_UNICODE_STRING(_var, _str)   extern const __declspec(selectany) UNICODE_STRING _var = RTL_CONSTANT_STRING(_str)
 
#define OBJ_HANDLE_TAGBITS   0x00000003L
 
#define OBJ_INHERIT   0x00000002L
 
#define OBJ_PERMANENT   0x00000010L
 
#define OBJ_EXCLUSIVE   0x00000020L
 
#define OBJ_CASE_INSENSITIVE   0x00000040L
 
#define OBJ_OPENIF   0x00000080L
 
#define OBJ_OPENLINK   0x00000100L
 
#define OBJ_KERNEL_HANDLE   0x00000200L
 
#define OBJ_FORCE_ACCESS_CHECK   0x00000400L
 
#define OBJ_VALID_ATTRIBUTES   0x000007F2L
 
#define InitializeObjectAttributes(p, n, a, r, s)
 
#define RTL_CONSTANT_OBJECT_ATTRIBUTES(n, a)
 
#define RTL_INIT_OBJECT_ATTRIBUTES(n, a)   RTL_CONSTANT_OBJECT_ATTRIBUTES(n, a)
 
#define RTL_BALANCED_NODE_RESERVED_PARENT_MASK   3
 
#define RTL_BALANCED_NODE_GET_PARENT_POINTER(Node)
 

Typedefs

typedef NTSTATUSPNTSTATUS
 
typedef long SECURITY_STATUS
 
typedef LARGE_INTEGER PHYSICAL_ADDRESS
 
typedef LARGE_INTEGERPPHYSICAL_ADDRESS
 
typedef struct _QUAD QUAD
 
typedef struct _QUADPQUAD
 
typedef struct _QUAD UQUAD
 
typedef struct _QUADPUQUAD
 
typedef struct _STRING STRING
 
typedef struct _STRINGPSTRING
 
typedef struct _STRING ANSI_STRING
 
typedef struct _STRINGPANSI_STRING
 
typedef struct _STRING OEM_STRING
 
typedef struct _STRINGPOEM_STRING
 
typedef CONST STRINGPCOEM_STRING
 
typedef STRING CANSI_STRING
 
typedef PSTRING PCANSI_STRING
 
typedef struct _STRING32 STRING32
 
typedef struct _STRING32PSTRING32
 
typedef struct _STRING32 UNICODE_STRING32
 
typedef struct _STRING32PUNICODE_STRING32
 
typedef struct _STRING32 ANSI_STRING32
 
typedef struct _STRING32PANSI_STRING32
 
typedef struct _STRING64 STRING64
 
typedef struct _STRING64PSTRING64
 
typedef struct _STRING64 UNICODE_STRING64
 
typedef struct _STRING64PUNICODE_STRING64
 
typedef struct _STRING64 ANSI_STRING64
 
typedef struct _STRING64PANSI_STRING64
 
typedef struct _CSTRING CSTRING
 
typedef struct _CSTRINGPCSTRING
 
typedef struct _UNICODE_STRING UNICODE_STRING
 
typedef struct _UNICODE_STRINGPUNICODE_STRING
 
typedef const UNICODE_STRINGPCUNICODE_STRING
 
typedef USHORT RTL_STRING_LENGTH_TYPE
 
typedef struct _OBJECT_ATTRIBUTES OBJECT_ATTRIBUTES
 
typedef struct _OBJECT_ATTRIBUTESPOBJECT_ATTRIBUTES
 
typedef CONST OBJECT_ATTRIBUTESPCOBJECT_ATTRIBUTES
 
typedef struct _OBJECT_ATTRIBUTES32 OBJECT_ATTRIBUTES32
 
typedef struct
_OBJECT_ATTRIBUTES32
POBJECT_ATTRIBUTES32
 
typedef CONST OBJECT_ATTRIBUTES32PCOBJECT_ATTRIBUTES32
 
typedef struct _OBJECT_ATTRIBUTES64 OBJECT_ATTRIBUTES64
 
typedef struct
_OBJECT_ATTRIBUTES64
POBJECT_ATTRIBUTES64
 
typedef CONST OBJECT_ATTRIBUTES64PCOBJECT_ATTRIBUTES64
 
typedef struct _RTL_BALANCED_NODE RTL_BALANCED_NODE
 
typedef struct _RTL_BALANCED_NODEPRTL_BALANCED_NODE
 
typedef enum _NT_PRODUCT_TYPE NT_PRODUCT_TYPE
 
typedef enum _NT_PRODUCT_TYPEPNT_PRODUCT_TYPE
 
typedef enum _EVENT_TYPE EVENT_TYPE
 
typedef enum _TIMER_TYPE TIMER_TYPE
 
typedef enum _WAIT_TYPE WAIT_TYPE
 

Enumerations

enum  _NT_PRODUCT_TYPE { NtProductWinNt = 1, NtProductLanManNt, NtProductServer }
 
enum  _EVENT_TYPE { NotificationEvent, SynchronizationEvent }
 
enum  _TIMER_TYPE { NotificationTimer, SynchronizationTimer }
 
enum  _WAIT_TYPE { WaitAll, WaitAny }
 

Functions

 $if (0)$endif()$define(_NTDEF_) $define(ULONG
 
char _RTL_CONSTANT_STRING_type_check (const void *s)
 
FORCEINLINE VOID ListEntry32To64 (_In_ PLIST_ENTRY32 ListEntry32, _Out_ PLIST_ENTRY64 ListEntry64)
 
FORCEINLINE VOID ListEntry64To32 (_In_ PLIST_ENTRY64 ListEntry64, _Out_ PLIST_ENTRY32 ListEntry32)
 

Macro Definition Documentation

#define __SECSTATUS_DEFINED__

Definition at line 125 of file ntdef.template.h.

#define _RTL_CONSTANT_STRING_remove_const_macro (   s)    (s)

Definition at line 218 of file ntdef.template.h.

#define _TIME   _LARGE_INTEGER

Definition at line 132 of file ntdef.template.h.

#define BASETYPES
#define CONST   const
#define CRITICAL
#define DECLARE_CONST_UNICODE_STRING (   _var,
  _string 
)
Value:
const WCHAR _var##_buffer[] = _string; \
const UNICODE_STRING _var = { sizeof(_string) - sizeof(WCHAR), sizeof(_string), (PWCH)_var##_buffer }
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * PWCH
Definition: ntbasedef.h:417
#define const
Definition: zconf.h:230

Definition at line 243 of file ntdef.template.h.

#define DECLARE_GLOBAL_CONST_UNICODE_STRING (   _var,
  _str 
)    extern const __declspec(selectany) UNICODE_STRING _var = RTL_CONSTANT_STRING(_str)

Definition at line 248 of file ntdef.template.h.

#define DECLARE_UNICODE_STRING_SIZE (   _var,
  _size 
)
Value:
WCHAR _var ## _buffer[_size]; \
UNICODE_STRING _var = { 0, (_size) * sizeof(WCHAR) , _var ## _buffer }
__wchar_t WCHAR
Definition: xmlstorage.h:180
struct _UNICODE_STRING UNICODE_STRING

Definition at line 239 of file ntdef.template.h.

#define FALSE   0
#define FASTCALL
#define HighTime   HighPart

Definition at line 135 of file ntdef.template.h.

#define IN
#define InitializeObjectAttributes (   p,
  n,
  a,
  r,
  s 
)
Value:
{ \
(p)->Length = sizeof(OBJECT_ATTRIBUTES); \
(p)->RootDirectory = (r); \
(p)->ObjectName = (n); \
(p)->Attributes = (a); \
(p)->SecurityQualityOfService = NULL; \
}
WCHAR RootDirectory[MAX_PATH]
Definition: format.c:74
_In_ USHORT _In_ ULONG _In_ PSOCKADDR _In_ PSOCKADDR _Reserved_ ULONG _In_opt_ PVOID _In_opt_ const WSK_CLIENT_CONNECTION_DISPATCH _In_opt_ PEPROCESS _In_opt_ PETHREAD _In_opt_ PSECURITY_DESCRIPTOR SecurityDescriptor
Definition: wsk.h:182
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
Definition: cmfuncs.h:62
GLuint n
Definition: s_context.h:57
VOID UINTN Length
Definition: acefiex.h:744
GLdouble s
Definition: gl.h:2039
#define NULL
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
GLfloat GLfloat p
Definition: glext.h:8902
struct _ACPI_EFI_FILE_HANDLE CHAR16 UINT64 UINT64 Attributes
Definition: acefiex.h:335

Definition at line 296 of file ntdef.template.h.

#define LowTime   LowPart

Definition at line 134 of file ntdef.template.h.

#define max (   a,
  b 
)    (((a) > (b)) ? (a) : (b))
#define min (   a,
  b 
)    (((a) < (b)) ? (a) : (b))
#define NOTHING
#define NULL   ((void *)0)
#define NULL64   ((void * POINTER_64)0)
#define OBJ_CASE_INSENSITIVE   0x00000040L

Definition at line 288 of file ntdef.template.h.

#define OBJ_EXCLUSIVE   0x00000020L

Definition at line 287 of file ntdef.template.h.

#define OBJ_FORCE_ACCESS_CHECK   0x00000400L

Definition at line 292 of file ntdef.template.h.

#define OBJ_HANDLE_TAGBITS   0x00000003L

Definition at line 282 of file ntdef.template.h.

#define OBJ_INHERIT   0x00000002L

Definition at line 285 of file ntdef.template.h.

#define OBJ_KERNEL_HANDLE   0x00000200L

Definition at line 291 of file ntdef.template.h.

#define OBJ_OPENIF   0x00000080L

Definition at line 289 of file ntdef.template.h.

#define OBJ_OPENLINK   0x00000100L

Definition at line 290 of file ntdef.template.h.

#define OBJ_PERMANENT   0x00000010L

Definition at line 286 of file ntdef.template.h.

#define OBJ_VALID_ATTRIBUTES   0x000007F2L

Definition at line 293 of file ntdef.template.h.

#define OUT
#define PTIME   PLARGE_INTEGER

Definition at line 133 of file ntdef.template.h.

#define RTL_BALANCED_NODE_GET_PARENT_POINTER (   Node)
Value:
((PRTL_BALANCED_NODE)((Node)->ParentValue & \
~RTL_BALANCED_NODE_RESERVED_PARENT_MASK))
struct _RTL_BALANCED_NODE * PRTL_BALANCED_NODE

Definition at line 344 of file ntdef.template.h.

#define RTL_BALANCED_NODE_RESERVED_PARENT_MASK   3

Definition at line 343 of file ntdef.template.h.

#define RTL_CONSTANT_OBJECT_ATTRIBUTES (   n,
  a 
)
Value:
{ \
a, \
NULL, \
NULL \
}
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
GLuint n
Definition: s_context.h:57
#define NULL
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
#define RTL_CONST_CAST(type)
Definition: ntbasedef.h:721

Definition at line 305 of file ntdef.template.h.

Referenced by BaseComputeProcessDllPath(), BasepIsProcessAllowed(), IsShimInfrastructureDisabled(), RtlCreateBootStatusDataFile(), and RtlLockBootStatusData().

#define RTL_CONSTANT_STRING (   s)
Value:
{ \
sizeof(s)-sizeof((s)[0]), \
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
GLdouble s
Definition: gl.h:2039
char _RTL_CONSTANT_STRING_type_check(const void *s)
#define _RTL_CONSTANT_STRING_remove_const_macro(s)

Definition at line 221 of file ntdef.template.h.

#define RTL_INIT_OBJECT_ATTRIBUTES (   n,
  a 
)    RTL_CONSTANT_OBJECT_ATTRIBUTES(n, a)

Definition at line 314 of file ntdef.template.h.

Referenced by SdbpOpenKey(), and SymlinkCreateTests().

#define STRICT   1

Definition at line 131 of file ntdef.template.h.

#define TRUE   1

Typedef Documentation

Definition at line 171 of file ntdef.template.h.

Definition at line 172 of file ntdef.template.h.

Definition at line 260 of file ntdef.template.h.

Definition at line 270 of file ntdef.template.h.

Definition at line 280 of file ntdef.template.h.

Definition at line 170 of file ntdef.template.h.

Definition at line 205 of file ntdef.template.h.

Definition at line 129 of file ntdef.template.h.

typedef NTSTATUS* PNTSTATUS

Definition at line 121 of file ntdef.template.h.

Definition at line 129 of file ntdef.template.h.

typedef struct _QUAD * PQUAD
typedef struct _STRING * PSTRING
typedef struct _QUAD * PUQUAD
typedef struct _QUAD QUAD

Definition at line 207 of file ntdef.template.h.

Definition at line 124 of file ntdef.template.h.

typedef struct _QUAD UQUAD

Enumeration Type Documentation

Enumerator
NotificationEvent 
SynchronizationEvent 

Definition at line 355 of file ntdef.template.h.

Enumerator
NtProductWinNt 
NtProductLanManNt 
NtProductServer 

Definition at line 349 of file ntdef.template.h.

349  {
350  NtProductWinNt = 1,
enum _NT_PRODUCT_TYPE * PNT_PRODUCT_TYPE
enum _NT_PRODUCT_TYPE NT_PRODUCT_TYPE
Enumerator
NotificationTimer 
SynchronizationTimer 

Definition at line 360 of file ntdef.template.h.

Enumerator
WaitAll 
WaitAny 

Definition at line 365 of file ntdef.template.h.

365  {
366  WaitAll,
367  WaitAny
368 } WAIT_TYPE;
enum _WAIT_TYPE WAIT_TYPE

Function Documentation

$if ( )
char _RTL_CONSTANT_STRING_type_check ( const void s)
FORCEINLINE VOID ListEntry32To64 ( _In_ PLIST_ENTRY32  ListEntry32,
_Out_ PLIST_ENTRY64  ListEntry64 
)

Definition at line 373 of file ntdef.template.h.

376 {
377  ListEntry64->Flink = ListEntry32->Flink;
378  ListEntry64->Blink = ListEntry32->Blink;
379 }
FORCEINLINE VOID ListEntry64To32 ( _In_ PLIST_ENTRY64  ListEntry64,
_Out_ PLIST_ENTRY32  ListEntry32 
)

Definition at line 383 of file ntdef.template.h.

386 {
387  /* ASSERT without ASSERT or intrinsics ... */
388  if (((ListEntry64->Flink >> 32) != 0) ||
389  ((ListEntry64->Blink >> 32) != 0))
390  {
391  (VOID)*(volatile LONG*)(LONG_PTR)-1;
392  }
393  ListEntry32->Flink = ListEntry64->Flink & 0xFFFFFFFF;
394  ListEntry32->Blink = ListEntry64->Blink & 0xFFFFFFFF;
395 }
long LONG
Definition: pedump.c:60
#define VOID
Definition: acefi.h:82
#define LONG_PTR
Definition: generated.c:25