ReactOS  0.4.13-dev-92-gf251225
rtltypes.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _RTL_BITMAP_RUN
 
struct  _RTL_QUERY_REGISTRY_TABLE
 
struct  _TIME_FIELDS
 
union  _SLIST_HEADER
 
struct  _EXCEPTION_RECORD
 
struct  _EXCEPTION_RECORD32
 
struct  _EXCEPTION_RECORD64
 
struct  _EXCEPTION_POINTERS
 
struct  _OSVERSIONINFOA
 
struct  _OSVERSIONINFOW
 
struct  _OSVERSIONINFOEXA
 
struct  _OSVERSIONINFOEXW
 
struct  _RTL_BALANCED_LINKS
 
struct  _RTL_AVL_TABLE
 
struct  _RTL_SPLAY_LINKS
 
struct  _RTL_GENERIC_TABLE
 
struct  _RTL_DYNAMIC_HASH_TABLE_ENTRY
 
struct  _RTL_DYNAMIC_HASH_TABLE_CONTEXT
 
struct  _RTL_DYNAMIC_HASH_TABLE_ENUMERATOR
 
struct  _RTL_DYNAMIC_HASH_TABLE
 
struct  _RTL_HEAP_PARAMETERS
 
struct  _GENERATE_NAME_CONTEXT
 
struct  _PREFIX_TABLE_ENTRY
 
struct  _PREFIX_TABLE
 
struct  _UNICODE_PREFIX_TABLE_ENTRY
 
struct  _UNICODE_PREFIX_TABLE
 
struct  _COMPRESSED_DATA_INFO
 

Macros

#define RTL_REGISTRY_ABSOLUTE   0
 
#define RTL_REGISTRY_SERVICES   1
 
#define RTL_REGISTRY_CONTROL   2
 
#define RTL_REGISTRY_WINDOWS_NT   3
 
#define RTL_REGISTRY_DEVICEMAP   4
 
#define RTL_REGISTRY_USER   5
 
#define RTL_REGISTRY_MAXIMUM   6
 
#define RTL_REGISTRY_HANDLE   0x40000000
 
#define RTL_REGISTRY_OPTIONAL   0x80000000
 
#define RTL_QUERY_REGISTRY_SUBKEY   0x00000001
 
#define RTL_QUERY_REGISTRY_TOPKEY   0x00000002
 
#define RTL_QUERY_REGISTRY_REQUIRED   0x00000004
 
#define RTL_QUERY_REGISTRY_NOVALUE   0x00000008
 
#define RTL_QUERY_REGISTRY_NOEXPAND   0x00000010
 
#define RTL_QUERY_REGISTRY_DIRECT   0x00000020
 
#define RTL_QUERY_REGISTRY_DELETE   0x00000040
 
#define HASH_STRING_ALGORITHM_DEFAULT   0
 
#define HASH_STRING_ALGORITHM_X65599   1
 
#define HASH_STRING_ALGORITHM_INVALID   0xffffffff
 
#define _SLIST_HEADER_
 
#define SLIST_ENTRY   SINGLE_LIST_ENTRY
 
#define _SLIST_ENTRY   _SINGLE_LIST_ENTRY
 
#define PSLIST_ENTRY   PSINGLE_LIST_ENTRY
 
#define EXCEPTION_NONCONTINUABLE   0x01
 
#define EXCEPTION_UNWINDING   0x02
 
#define EXCEPTION_EXIT_UNWIND   0x04
 
#define EXCEPTION_STACK_INVALID   0x08
 
#define EXCEPTION_NESTED_CALL   0x10
 
#define EXCEPTION_TARGET_UNWIND   0x20
 
#define EXCEPTION_COLLIDED_UNWIND   0x40
 
#define EXCEPTION_UNWIND
 
#define IS_UNWINDING(Flag)   ((Flag & EXCEPTION_UNWIND) != 0)
 
#define IS_DISPATCHING(Flag)   ((Flag & EXCEPTION_UNWIND) == 0)
 
#define IS_TARGET_UNWIND(Flag)   (Flag & EXCEPTION_TARGET_UNWIND)
 
#define EXCEPTION_MAXIMUM_PARAMETERS   15
 
#define NLS_MB_CODE_PAGE_TAG   (*NlsMbCodePageTag)
 
#define NLS_MB_OEM_CODE_PAGE_TAG   (*NlsMbOemCodePageTag)
 
#define SHORT_LEAST_SIGNIFICANT_BIT   0
 
#define SHORT_MOST_SIGNIFICANT_BIT   1
 
#define LONG_LEAST_SIGNIFICANT_BIT   0
 
#define LONG_3RD_MOST_SIGNIFICANT_BIT   1
 
#define LONG_2ND_MOST_SIGNIFICANT_BIT   2
 
#define LONG_MOST_SIGNIFICANT_BIT   3
 
#define RTLVERLIB_DDI(x)   Wdmlib##x
 
#define _RTL_RUN_ONCE_DEF
 
#define RTL_RUN_ONCE_INIT   {0}
 
#define RTL_RUN_ONCE_CHECK_ONLY   0x00000001UL
 
#define RTL_RUN_ONCE_ASYNC   0x00000002UL
 
#define RTL_RUN_ONCE_INIT_FAILED   0x00000004UL
 
#define RTL_RUN_ONCE_CTX_RESERVED_BITS   2
 
#define RTL_HASH_ALLOCATED_HEADER   0x00000001
 
#define RTL_HASH_RESERVED_SIGNATURE   0
 
#define VER_EQUAL   1
 
#define VER_GREATER   2
 
#define VER_GREATER_EQUAL   3
 
#define VER_LESS   4
 
#define VER_LESS_EQUAL   5
 
#define VER_AND   6
 
#define VER_OR   7
 
#define VER_CONDITION_MASK   7
 
#define VER_NUM_BITS_PER_CONDITION_MASK   3
 
#define VER_MINORVERSION   0x0000001
 
#define VER_MAJORVERSION   0x0000002
 
#define VER_BUILDNUMBER   0x0000004
 
#define VER_PLATFORMID   0x0000008
 
#define VER_SERVICEPACKMINOR   0x0000010
 
#define VER_SERVICEPACKMAJOR   0x0000020
 
#define VER_SUITENAME   0x0000040
 
#define VER_PRODUCT_TYPE   0x0000080
 
#define VER_NT_WORKSTATION   0x0000001
 
#define VER_NT_DOMAIN_CONTROLLER   0x0000002
 
#define VER_NT_SERVER   0x0000003
 
#define VER_PLATFORM_WIN32s   0
 
#define VER_PLATFORM_WIN32_WINDOWS   1
 
#define VER_PLATFORM_WIN32_NT   2
 
#define RTL_HASH_ALLOCATED_HEADER   0x00000001
 
#define HASH_ENTRY_KEY(x)   ((x)->Signature)
 
#define RTL_SYSTEM_VOLUME_INFORMATION_FOLDER   L"System Volume Information"
 

Typedefs

typedef struct _RTL_BITMAP_RUN RTL_BITMAP_RUN
 
typedef struct _RTL_BITMAP_RUNPRTL_BITMAP_RUN
 
typedef struct _RTL_QUERY_REGISTRY_TABLE RTL_QUERY_REGISTRY_TABLE
 
typedef struct _RTL_QUERY_REGISTRY_TABLEPRTL_QUERY_REGISTRY_TABLE
 
typedef struct _TIME_FIELDS TIME_FIELDS
 
typedef struct _TIME_FIELDSPTIME_FIELDS
 
typedef SLIST_ENTRY SLIST_ENTRY32
 
typedef SLIST_ENTRYPSLIST_ENTRY32
 
typedef union _SLIST_HEADER SLIST_HEADER
 
typedef union _SLIST_HEADERPSLIST_HEADER
 
typedef SLIST_HEADER SLIST_HEADER32
 
typedef SLIST_HEADERPSLIST_HEADER32
 
typedef struct _EXCEPTION_RECORD EXCEPTION_RECORD
 
typedef struct _EXCEPTION_RECORDPEXCEPTION_RECORD
 
typedef struct _EXCEPTION_RECORD32 EXCEPTION_RECORD32
 
typedef struct _EXCEPTION_RECORD32PEXCEPTION_RECORD32
 
typedef struct _EXCEPTION_RECORD64 EXCEPTION_RECORD64
 
typedef struct _EXCEPTION_RECORD64PEXCEPTION_RECORD64
 
typedef struct _EXCEPTION_POINTERS EXCEPTION_POINTERS
 
typedef struct _EXCEPTION_POINTERSPEXCEPTION_POINTERS
 
typedef BOOLEAN(* PFN_RTL_IS_NTDDI_VERSION_AVAILABLE) (_In_ ULONG Version)
 
typedef BOOLEAN(* PFN_RTL_IS_SERVICE_PACK_VERSION_INSTALLED) (_In_ ULONG Version)
 
typedef struct _OSVERSIONINFOA OSVERSIONINFOA
 
typedef struct _OSVERSIONINFOAPOSVERSIONINFOA
 
typedef struct _OSVERSIONINFOALPOSVERSIONINFOA
 
typedef struct _OSVERSIONINFOW OSVERSIONINFOW
 
typedef struct _OSVERSIONINFOWPOSVERSIONINFOW
 
typedef struct _OSVERSIONINFOWLPOSVERSIONINFOW
 
typedef struct _OSVERSIONINFOW RTL_OSVERSIONINFOW
 
typedef struct _OSVERSIONINFOWPRTL_OSVERSIONINFOW
 
typedef struct _OSVERSIONINFOEXA OSVERSIONINFOEXA
 
typedef struct _OSVERSIONINFOEXAPOSVERSIONINFOEXA
 
typedef struct _OSVERSIONINFOEXALPOSVERSIONINFOEXA
 
typedef struct _OSVERSIONINFOEXW OSVERSIONINFOEXW
 
typedef struct _OSVERSIONINFOEXWPOSVERSIONINFOEXW
 
typedef struct _OSVERSIONINFOEXWLPOSVERSIONINFOEXW
 
typedef struct _OSVERSIONINFOEXW RTL_OSVERSIONINFOEXW
 
typedef struct _OSVERSIONINFOEXWPRTL_OSVERSIONINFOEXW
 
typedef OSVERSIONINFOEXA OSVERSIONINFOEX
 
typedef POSVERSIONINFOEXA POSVERSIONINFOEX
 
typedef LPOSVERSIONINFOEXA LPOSVERSIONINFOEX
 
typedef OSVERSIONINFOA OSVERSIONINFO
 
typedef POSVERSIONINFOA POSVERSIONINFO
 
typedef LPOSVERSIONINFOA LPOSVERSIONINFO
 
typedef enum _TABLE_SEARCH_RESULT TABLE_SEARCH_RESULT
 
typedef enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS
 
typedef RTL_AVL_COMPARE_ROUTINE * PRTL_AVL_COMPARE_ROUTINE
 
typedef RTL_AVL_ALLOCATE_ROUTINE * PRTL_AVL_ALLOCATE_ROUTINE
 
typedef RTL_AVL_FREE_ROUTINE * PRTL_AVL_FREE_ROUTINE
 
typedef RTL_AVL_MATCH_FUNCTION * PRTL_AVL_MATCH_FUNCTION
 
typedef struct _RTL_BALANCED_LINKS RTL_BALANCED_LINKS
 
typedef struct _RTL_BALANCED_LINKSPRTL_BALANCED_LINKS
 
typedef struct _RTL_AVL_TABLE RTL_AVL_TABLE
 
typedef struct _RTL_AVL_TABLEPRTL_AVL_TABLE
 
typedef struct _RTL_SPLAY_LINKS RTL_SPLAY_LINKS
 
typedef struct _RTL_SPLAY_LINKSPRTL_SPLAY_LINKS
 
typedef RTL_GENERIC_COMPARE_ROUTINE * PRTL_GENERIC_COMPARE_ROUTINE
 
typedef RTL_GENERIC_ALLOCATE_ROUTINE * PRTL_GENERIC_ALLOCATE_ROUTINE
 
typedef RTL_GENERIC_FREE_ROUTINE * PRTL_GENERIC_FREE_ROUTINE
 
typedef struct _RTL_GENERIC_TABLE RTL_GENERIC_TABLE
 
typedef struct _RTL_GENERIC_TABLEPRTL_GENERIC_TABLE
 
typedef struct _RTL_DYNAMIC_HASH_TABLE_ENTRY RTL_DYNAMIC_HASH_TABLE_ENTRY
 
typedef struct _RTL_DYNAMIC_HASH_TABLE_ENTRYPRTL_DYNAMIC_HASH_TABLE_ENTRY
 
typedef struct _RTL_DYNAMIC_HASH_TABLE_CONTEXT RTL_DYNAMIC_HASH_TABLE_CONTEXT
 
typedef struct _RTL_DYNAMIC_HASH_TABLE_CONTEXTPRTL_DYNAMIC_HASH_TABLE_CONTEXT
 
typedef struct _RTL_DYNAMIC_HASH_TABLE_ENUMERATOR RTL_DYNAMIC_HASH_TABLE_ENUMERATOR
 
typedef struct _RTL_DYNAMIC_HASH_TABLE_ENUMERATORPRTL_DYNAMIC_HASH_TABLE_ENUMERATOR
 
typedef struct _RTL_DYNAMIC_HASH_TABLE RTL_DYNAMIC_HASH_TABLE
 
typedef struct _RTL_DYNAMIC_HASH_TABLEPRTL_DYNAMIC_HASH_TABLE
 
typedef VOID(NTAPIPRTL_FREE_STRING_ROUTINE) (_In_ __drv_freesMem(Mem) _Post_invalid_ PVOID Buffer)
 
typedef struct _RTL_HEAP_PARAMETERS RTL_HEAP_PARAMETERS
 
typedef struct _RTL_HEAP_PARAMETERSPRTL_HEAP_PARAMETERS
 
typedef struct _GENERATE_NAME_CONTEXT GENERATE_NAME_CONTEXT
 
typedef struct _GENERATE_NAME_CONTEXTPGENERATE_NAME_CONTEXT
 
typedef struct _PREFIX_TABLE_ENTRY PREFIX_TABLE_ENTRY
 
typedef struct _PREFIX_TABLE_ENTRYPPREFIX_TABLE_ENTRY
 
typedef struct _PREFIX_TABLE PREFIX_TABLE
 
typedef struct _PREFIX_TABLEPPREFIX_TABLE
 
typedef struct _UNICODE_PREFIX_TABLE_ENTRY UNICODE_PREFIX_TABLE_ENTRY
 
typedef struct _UNICODE_PREFIX_TABLE_ENTRYPUNICODE_PREFIX_TABLE_ENTRY
 
typedef struct _UNICODE_PREFIX_TABLE UNICODE_PREFIX_TABLE
 
typedef struct _UNICODE_PREFIX_TABLEPUNICODE_PREFIX_TABLE
 
typedef struct _COMPRESSED_DATA_INFO COMPRESSED_DATA_INFO
 
typedef struct _COMPRESSED_DATA_INFOPCOMPRESSED_DATA_INFO
 

Enumerations

enum  _TABLE_SEARCH_RESULT { TableEmptyTree, TableFoundNode, TableInsertAsLeft, TableInsertAsRight }
 
enum  _RTL_GENERIC_COMPARE_RESULTS { GenericLessThan, GenericGreaterThan, GenericEqual }
 

Functions

 $if (_WDMDDK_) typedef struct _RTL_BITMAP
 
 _Function_class_ (RTL_QUERY_REGISTRY_ROUTINE) _IRQL_requires_max_(PASSIVE_LEVEL) _IRQL_requires_same_ typedef NTSTATUS(NTAPI *PRTL_QUERY_REGISTRY_ROUTINE)(_In_z_ PWSTR ValueName
 
_In_ ULONG _In_reads_bytes_opt_ (ValueLength) PVOID ValueData
 
 $endif (_WDMDDK_) $if(_NTDDK_) typedef union _RTL_RUN_ONCE
 
 _Function_class_ (RTL_RUN_ONCE_INIT_FN) _IRQL_requires_same_ typedef ULONG(NTAPI *PRTL_RUN_ONCE_INIT_FN)(_Inout_ PRTL_RUN_ONCE RunOnce
 
_IRQL_requires_same_ _Function_class_ (RTL_AVL_COMPARE_ROUTINE) typedef RTL_GENERIC_COMPARE_RESULTS(NTAPI RTL_AVL_COMPARE_ROUTINE)(_In_ struct _RTL_AVL_TABLE *Table
 
_IRQL_requires_same_ _Function_class_ (RTL_AVL_ALLOCATE_ROUTINE) __drv_allocatesMem(Mem) typedef PVOID(NTAPI RTL_AVL_ALLOCATE_ROUTINE)(_In_ struct _RTL_AVL_TABLE *Table
 
_IRQL_requires_same_ _Function_class_ (RTL_AVL_FREE_ROUTINE) typedef VOID(NTAPI RTL_AVL_FREE_ROUTINE)(_In_ struct _RTL_AVL_TABLE *Table
 
_IRQL_requires_same_ _In_ __drv_freesMem (Mem) _Post_invalid_ PVOID Buffer)
 
_IRQL_requires_same_ _Function_class_ (RTL_AVL_MATCH_FUNCTION) typedef NTSTATUS(NTAPI RTL_AVL_MATCH_FUNCTION)(_In_ struct _RTL_AVL_TABLE *Table
 
_IRQL_requires_same_ _Function_class_ (RTL_GENERIC_COMPARE_ROUTINE) typedef RTL_GENERIC_COMPARE_RESULTS(NTAPI RTL_GENERIC_COMPARE_ROUTINE)(_In_ struct _RTL_GENERIC_TABLE *Table
 
_IRQL_requires_same_ _Function_class_ (RTL_GENERIC_ALLOCATE_ROUTINE) __drv_allocatesMem(Mem) typedef PVOID(NTAPI RTL_GENERIC_ALLOCATE_ROUTINE)(_In_ struct _RTL_GENERIC_TABLE *Table
 
_IRQL_requires_same_ _Function_class_ (RTL_GENERIC_FREE_ROUTINE) typedef VOID(NTAPI RTL_GENERIC_FREE_ROUTINE)(_In_ struct _RTL_GENERIC_TABLE *Table
 
 $endif (_NTDDK_) $if(_NTIFS_) _Function_class_(RTL_ALLOCATE_STRING_ROUTINE) _IRQL_requires_max_(PASSIVE_LEVEL) __drv_allocatesMem(Mem) typedef PVOID(NTAPI *PRTL_ALLOCATE_STRING_ROUTINE)(_In_ SIZE_T NumberOfBytes)
 
 _Function_class_ (RTL_HEAP_COMMIT_ROUTINE) _IRQL_requires_same_ typedef NTSTATUS(NTAPI *PRTL_HEAP_COMMIT_ROUTINE)(_In_ PVOID Base
 

Variables

 RTL_BITMAP
 
PRTL_BITMAP
 
_In_ ULONG ValueType
 
_In_ ULONG _In_ ULONG ValueLength
 
_In_ ULONG _In_ ULONG _In_opt_ PVOID Context
 
_In_ ULONG _In_ ULONG _In_opt_ PVOID _In_opt_ PVOID EntryContext
 
BOOLEANNlsMbCodePageTag
 
BOOLEANNlsMbOemCodePageTag
 
 RTL_RUN_ONCE
 
PRTL_RUN_ONCE
 
_Inout_opt_ PVOID Parameter
 
_IRQL_requires_same_ _In_ PVOID FirstStruct
 
_IRQL_requires_same_ _In_ PVOID _In_ PVOID SecondStruct
 
_IRQL_requires_same_ _In_ CLONG ByteSize
 
_IRQL_requires_same_ _In_ PVOID UserData
 
_IRQL_requires_same_ _In_ PVOID _In_ PVOID MatchData
 
NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine
 
NTKERNELAPI const PRTL_FREE_STRING_ROUTINE RtlFreeStringRoutine
 
_Inout_ PVOIDCommitAddress
 
_Inout_ PVOID _Inout_ PSIZE_T CommitSize
 

Macro Definition Documentation

◆ _RTL_RUN_ONCE_DEF

#define _RTL_RUN_ONCE_DEF

◆ _SLIST_ENTRY

#define _SLIST_ENTRY   _SINGLE_LIST_ENTRY

Definition at line 129 of file rtltypes.h.

◆ _SLIST_HEADER_

#define _SLIST_HEADER_

Definition at line 74 of file rtltypes.h.

◆ EXCEPTION_COLLIDED_UNWIND

#define EXCEPTION_COLLIDED_UNWIND   0x40

Definition at line 156 of file rtltypes.h.

◆ EXCEPTION_EXIT_UNWIND

#define EXCEPTION_EXIT_UNWIND   0x04

Definition at line 152 of file rtltypes.h.

◆ EXCEPTION_MAXIMUM_PARAMETERS

#define EXCEPTION_MAXIMUM_PARAMETERS   15

Definition at line 164 of file rtltypes.h.

◆ EXCEPTION_NESTED_CALL

#define EXCEPTION_NESTED_CALL   0x10

Definition at line 154 of file rtltypes.h.

◆ EXCEPTION_NONCONTINUABLE

#define EXCEPTION_NONCONTINUABLE   0x01

Definition at line 150 of file rtltypes.h.

◆ EXCEPTION_STACK_INVALID

#define EXCEPTION_STACK_INVALID   0x08

Definition at line 153 of file rtltypes.h.

◆ EXCEPTION_TARGET_UNWIND

#define EXCEPTION_TARGET_UNWIND   0x20

Definition at line 155 of file rtltypes.h.

◆ EXCEPTION_UNWIND

#define EXCEPTION_UNWIND
Value:
EXCEPTION_TARGET_UNWIND | EXCEPTION_COLLIDED_UNWIND)
#define EXCEPTION_UNWINDING
Definition: rtltypes.h:151
#define EXCEPTION_COLLIDED_UNWIND
Definition: rtltypes.h:156
#define EXCEPTION_EXIT_UNWIND
Definition: rtltypes.h:152

Definition at line 157 of file rtltypes.h.

◆ EXCEPTION_UNWINDING

#define EXCEPTION_UNWINDING   0x02

Definition at line 151 of file rtltypes.h.

◆ HASH_ENTRY_KEY

#define HASH_ENTRY_KEY (   x)    ((x)->Signature)

Definition at line 534 of file rtltypes.h.

◆ HASH_STRING_ALGORITHM_DEFAULT

#define HASH_STRING_ALGORITHM_DEFAULT   0

◆ HASH_STRING_ALGORITHM_INVALID

#define HASH_STRING_ALGORITHM_INVALID   0xffffffff

◆ HASH_STRING_ALGORITHM_X65599

#define HASH_STRING_ALGORITHM_X65599   1

◆ IS_DISPATCHING

#define IS_DISPATCHING (   Flag)    ((Flag & EXCEPTION_UNWIND) == 0)

Definition at line 161 of file rtltypes.h.

◆ IS_TARGET_UNWIND

#define IS_TARGET_UNWIND (   Flag)    (Flag & EXCEPTION_TARGET_UNWIND)

Definition at line 162 of file rtltypes.h.

◆ IS_UNWINDING

#define IS_UNWINDING (   Flag)    ((Flag & EXCEPTION_UNWIND) != 0)

Definition at line 160 of file rtltypes.h.

◆ LONG_2ND_MOST_SIGNIFICANT_BIT

#define LONG_2ND_MOST_SIGNIFICANT_BIT   2

Definition at line 219 of file rtltypes.h.

◆ LONG_3RD_MOST_SIGNIFICANT_BIT

#define LONG_3RD_MOST_SIGNIFICANT_BIT   1

Definition at line 218 of file rtltypes.h.

◆ LONG_LEAST_SIGNIFICANT_BIT

#define LONG_LEAST_SIGNIFICANT_BIT   0

Definition at line 217 of file rtltypes.h.

◆ LONG_MOST_SIGNIFICANT_BIT

#define LONG_MOST_SIGNIFICANT_BIT   3

Definition at line 220 of file rtltypes.h.

◆ NLS_MB_CODE_PAGE_TAG

#define NLS_MB_CODE_PAGE_TAG   (*NlsMbCodePageTag)

Definition at line 208 of file rtltypes.h.

◆ NLS_MB_OEM_CODE_PAGE_TAG

#define NLS_MB_OEM_CODE_PAGE_TAG   (*NlsMbOemCodePageTag)

Definition at line 211 of file rtltypes.h.

◆ PSLIST_ENTRY

#define PSLIST_ENTRY   PSINGLE_LIST_ENTRY

Definition at line 130 of file rtltypes.h.

◆ RTL_HASH_ALLOCATED_HEADER [1/2]

#define RTL_HASH_ALLOCATED_HEADER   0x00000001

Definition at line 503 of file rtltypes.h.

◆ RTL_HASH_ALLOCATED_HEADER [2/2]

#define RTL_HASH_ALLOCATED_HEADER   0x00000001

Definition at line 503 of file rtltypes.h.

◆ RTL_HASH_RESERVED_SIGNATURE

#define RTL_HASH_RESERVED_SIGNATURE   0

◆ RTL_QUERY_REGISTRY_DELETE

#define RTL_QUERY_REGISTRY_DELETE   0x00000040

◆ RTL_QUERY_REGISTRY_DIRECT

#define RTL_QUERY_REGISTRY_DIRECT   0x00000020

◆ RTL_QUERY_REGISTRY_NOEXPAND

#define RTL_QUERY_REGISTRY_NOEXPAND   0x00000010

◆ RTL_QUERY_REGISTRY_NOVALUE

#define RTL_QUERY_REGISTRY_NOVALUE   0x00000008

◆ RTL_QUERY_REGISTRY_REQUIRED

#define RTL_QUERY_REGISTRY_REQUIRED   0x00000004

◆ RTL_QUERY_REGISTRY_SUBKEY

#define RTL_QUERY_REGISTRY_SUBKEY   0x00000001

◆ RTL_QUERY_REGISTRY_TOPKEY

#define RTL_QUERY_REGISTRY_TOPKEY   0x00000002

◆ RTL_REGISTRY_ABSOLUTE

#define RTL_REGISTRY_ABSOLUTE   0

◆ RTL_REGISTRY_CONTROL

#define RTL_REGISTRY_CONTROL   2

◆ RTL_REGISTRY_DEVICEMAP

#define RTL_REGISTRY_DEVICEMAP   4

◆ RTL_REGISTRY_HANDLE

#define RTL_REGISTRY_HANDLE   0x40000000

◆ RTL_REGISTRY_MAXIMUM

#define RTL_REGISTRY_MAXIMUM   6

◆ RTL_REGISTRY_OPTIONAL

#define RTL_REGISTRY_OPTIONAL   0x80000000

◆ RTL_REGISTRY_SERVICES

#define RTL_REGISTRY_SERVICES   1

◆ RTL_REGISTRY_USER

#define RTL_REGISTRY_USER   5

◆ RTL_REGISTRY_WINDOWS_NT

#define RTL_REGISTRY_WINDOWS_NT   3

◆ RTL_RUN_ONCE_ASYNC

#define RTL_RUN_ONCE_ASYNC   0x00000002UL

◆ RTL_RUN_ONCE_CHECK_ONLY

#define RTL_RUN_ONCE_CHECK_ONLY   0x00000001UL

◆ RTL_RUN_ONCE_CTX_RESERVED_BITS

#define RTL_RUN_ONCE_CTX_RESERVED_BITS   2

◆ RTL_RUN_ONCE_INIT

#define RTL_RUN_ONCE_INIT   {0}

◆ RTL_RUN_ONCE_INIT_FAILED

#define RTL_RUN_ONCE_INIT_FAILED   0x00000004UL

◆ RTL_SYSTEM_VOLUME_INFORMATION_FOLDER

#define RTL_SYSTEM_VOLUME_INFORMATION_FOLDER   L"System Volume Information"

◆ RTLVERLIB_DDI

#define RTLVERLIB_DDI (   x)    Wdmlib##x

Definition at line 222 of file rtltypes.h.

◆ SHORT_LEAST_SIGNIFICANT_BIT

#define SHORT_LEAST_SIGNIFICANT_BIT   0

Definition at line 214 of file rtltypes.h.

◆ SHORT_MOST_SIGNIFICANT_BIT

#define SHORT_MOST_SIGNIFICANT_BIT   1

Definition at line 215 of file rtltypes.h.

◆ SLIST_ENTRY

#define SLIST_ENTRY   SINGLE_LIST_ENTRY

Definition at line 128 of file rtltypes.h.

◆ VER_AND

#define VER_AND   6

◆ VER_BUILDNUMBER

#define VER_BUILDNUMBER   0x0000004

◆ VER_CONDITION_MASK

#define VER_CONDITION_MASK   7

◆ VER_EQUAL

#define VER_EQUAL   1

◆ VER_GREATER

#define VER_GREATER   2

◆ VER_GREATER_EQUAL

#define VER_GREATER_EQUAL   3

◆ VER_LESS

#define VER_LESS   4

◆ VER_LESS_EQUAL

#define VER_LESS_EQUAL   5

◆ VER_MAJORVERSION

#define VER_MAJORVERSION   0x0000002

◆ VER_MINORVERSION

#define VER_MINORVERSION   0x0000001

◆ VER_NT_DOMAIN_CONTROLLER

#define VER_NT_DOMAIN_CONTROLLER   0x0000002

◆ VER_NT_SERVER

#define VER_NT_SERVER   0x0000003

◆ VER_NT_WORKSTATION

#define VER_NT_WORKSTATION   0x0000001

◆ VER_NUM_BITS_PER_CONDITION_MASK

#define VER_NUM_BITS_PER_CONDITION_MASK   3

◆ VER_OR

#define VER_OR   7

◆ VER_PLATFORM_WIN32_NT

#define VER_PLATFORM_WIN32_NT   2

◆ VER_PLATFORM_WIN32_WINDOWS

#define VER_PLATFORM_WIN32_WINDOWS   1

◆ VER_PLATFORM_WIN32s

#define VER_PLATFORM_WIN32s   0

◆ VER_PLATFORMID

#define VER_PLATFORMID   0x0000008

◆ VER_PRODUCT_TYPE

#define VER_PRODUCT_TYPE   0x0000080

◆ VER_SERVICEPACKMAJOR

#define VER_SERVICEPACKMAJOR   0x0000020

◆ VER_SERVICEPACKMINOR

#define VER_SERVICEPACKMINOR   0x0000010

◆ VER_SUITENAME

#define VER_SUITENAME   0x0000040

Typedef Documentation

◆ COMPRESSED_DATA_INFO

◆ EXCEPTION_POINTERS

◆ EXCEPTION_RECORD

◆ EXCEPTION_RECORD32

◆ EXCEPTION_RECORD64

◆ GENERATE_NAME_CONTEXT

◆ LPOSVERSIONINFO

Definition at line 291 of file rtltypes.h.

◆ LPOSVERSIONINFOA

◆ LPOSVERSIONINFOEX

Definition at line 288 of file rtltypes.h.

◆ LPOSVERSIONINFOEXA

◆ LPOSVERSIONINFOEXW

◆ LPOSVERSIONINFOW

◆ OSVERSIONINFO

Definition at line 289 of file rtltypes.h.

◆ OSVERSIONINFOA

◆ OSVERSIONINFOEX

Definition at line 286 of file rtltypes.h.

◆ OSVERSIONINFOEXA

◆ OSVERSIONINFOEXW

◆ OSVERSIONINFOW

◆ PCOMPRESSED_DATA_INFO

◆ PEXCEPTION_POINTERS

◆ PEXCEPTION_RECORD

◆ PEXCEPTION_RECORD32

◆ PEXCEPTION_RECORD64

◆ PFN_RTL_IS_NTDDI_VERSION_AVAILABLE

typedef BOOLEAN(* PFN_RTL_IS_NTDDI_VERSION_AVAILABLE) (_In_ ULONG Version)

Definition at line 225 of file rtltypes.h.

◆ PFN_RTL_IS_SERVICE_PACK_VERSION_INSTALLED

typedef BOOLEAN(* PFN_RTL_IS_SERVICE_PACK_VERSION_INSTALLED) (_In_ ULONG Version)

Definition at line 229 of file rtltypes.h.

◆ PGENERATE_NAME_CONTEXT

◆ POSVERSIONINFO

Definition at line 290 of file rtltypes.h.

◆ POSVERSIONINFOA

◆ POSVERSIONINFOEX

Definition at line 287 of file rtltypes.h.

◆ POSVERSIONINFOEXA

◆ POSVERSIONINFOEXW

◆ POSVERSIONINFOW

◆ PPREFIX_TABLE

◆ PPREFIX_TABLE_ENTRY

◆ PREFIX_TABLE

◆ PREFIX_TABLE_ENTRY

◆ PRTL_AVL_ALLOCATE_ROUTINE

typedef RTL_AVL_ALLOCATE_ROUTINE* PRTL_AVL_ALLOCATE_ROUTINE

Definition at line 390 of file rtltypes.h.

◆ PRTL_AVL_COMPARE_ROUTINE

typedef RTL_AVL_COMPARE_ROUTINE* PRTL_AVL_COMPARE_ROUTINE

Definition at line 381 of file rtltypes.h.

◆ PRTL_AVL_FREE_ROUTINE

typedef RTL_AVL_FREE_ROUTINE* PRTL_AVL_FREE_ROUTINE

Definition at line 398 of file rtltypes.h.

◆ PRTL_AVL_MATCH_FUNCTION

typedef RTL_AVL_MATCH_FUNCTION* PRTL_AVL_MATCH_FUNCTION

Definition at line 407 of file rtltypes.h.

◆ PRTL_AVL_TABLE

◆ PRTL_BALANCED_LINKS

◆ PRTL_BITMAP_RUN

◆ PRTL_DYNAMIC_HASH_TABLE

◆ PRTL_DYNAMIC_HASH_TABLE_CONTEXT

◆ PRTL_DYNAMIC_HASH_TABLE_ENTRY

◆ PRTL_DYNAMIC_HASH_TABLE_ENUMERATOR

◆ PRTL_FREE_STRING_ROUTINE

typedef VOID(NTAPI * PRTL_FREE_STRING_ROUTINE) (_In_ __drv_freesMem(Mem) _Post_invalid_ PVOID Buffer)

Definition at line 559 of file rtltypes.h.

◆ PRTL_GENERIC_ALLOCATE_ROUTINE

typedef RTL_GENERIC_ALLOCATE_ROUTINE* PRTL_GENERIC_ALLOCATE_ROUTINE

Definition at line 457 of file rtltypes.h.

◆ PRTL_GENERIC_COMPARE_ROUTINE

typedef RTL_GENERIC_COMPARE_ROUTINE* PRTL_GENERIC_COMPARE_ROUTINE

Definition at line 448 of file rtltypes.h.

◆ PRTL_GENERIC_FREE_ROUTINE

typedef RTL_GENERIC_FREE_ROUTINE* PRTL_GENERIC_FREE_ROUTINE

Definition at line 465 of file rtltypes.h.

◆ PRTL_GENERIC_TABLE

◆ PRTL_HEAP_PARAMETERS

◆ PRTL_OSVERSIONINFOEXW

◆ PRTL_OSVERSIONINFOW

◆ PRTL_QUERY_REGISTRY_TABLE

◆ PRTL_SPLAY_LINKS

◆ PSLIST_ENTRY32

Definition at line 132 of file rtltypes.h.

◆ PSLIST_HEADER

typedef union _SLIST_HEADER * PSLIST_HEADER

◆ PSLIST_HEADER32

Definition at line 143 of file rtltypes.h.

◆ PTIME_FIELDS

◆ PUNICODE_PREFIX_TABLE

◆ PUNICODE_PREFIX_TABLE_ENTRY

◆ RTL_AVL_TABLE

◆ RTL_BALANCED_LINKS

◆ RTL_BITMAP_RUN

◆ RTL_DYNAMIC_HASH_TABLE

◆ RTL_DYNAMIC_HASH_TABLE_CONTEXT

◆ RTL_DYNAMIC_HASH_TABLE_ENTRY

◆ RTL_DYNAMIC_HASH_TABLE_ENUMERATOR

◆ RTL_GENERIC_COMPARE_RESULTS

◆ RTL_GENERIC_TABLE

◆ RTL_HEAP_PARAMETERS

◆ RTL_OSVERSIONINFOEXW

◆ RTL_OSVERSIONINFOW

◆ RTL_QUERY_REGISTRY_TABLE

◆ RTL_SPLAY_LINKS

◆ SLIST_ENTRY32

Definition at line 132 of file rtltypes.h.

◆ SLIST_HEADER

typedef union _SLIST_HEADER SLIST_HEADER

◆ SLIST_HEADER32

Definition at line 143 of file rtltypes.h.

◆ TABLE_SEARCH_RESULT

◆ TIME_FIELDS

◆ UNICODE_PREFIX_TABLE

◆ UNICODE_PREFIX_TABLE_ENTRY

Enumeration Type Documentation

◆ _RTL_GENERIC_COMPARE_RESULTS

Enumerator
GenericLessThan 
GenericGreaterThan 
GenericEqual 

Definition at line 365 of file rtltypes.h.

365  {
enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS

◆ _TABLE_SEARCH_RESULT

Enumerator
TableEmptyTree 
TableFoundNode 
TableInsertAsLeft 
TableInsertAsRight 

Definition at line 358 of file rtltypes.h.

Function Documentation

◆ $endif() [1/2]

$endif ( _WDMDDK_  )

Definition at line 294 of file rtltypes.h.

300  {0}
301 
302 #define RTL_RUN_ONCE_CHECK_ONLY 0x00000001UL
303 #define RTL_RUN_ONCE_ASYNC 0x00000002UL
304 #define RTL_RUN_ONCE_INIT_FAILED 0x00000004UL
305 
306 #define RTL_RUN_ONCE_CTX_RESERVED_BITS 2
307 
308 #define RTL_HASH_ALLOCATED_HEADER 0x00000001
309 
310 #define RTL_HASH_RESERVED_SIGNATURE 0
311 
312 /* RtlVerifyVersionInfo() ComparisonType */
313 
314 #define VER_EQUAL 1
315 #define VER_GREATER 2
316 #define VER_GREATER_EQUAL 3
317 #define VER_LESS 4
318 #define VER_LESS_EQUAL 5
319 #define VER_AND 6
320 #define VER_OR 7
321 
322 #define VER_CONDITION_MASK 7
323 #define VER_NUM_BITS_PER_CONDITION_MASK 3
324 
325 /* RtlVerifyVersionInfo() TypeMask */
326 
327 #define VER_MINORVERSION 0x0000001
328 #define VER_MAJORVERSION 0x0000002
329 #define VER_BUILDNUMBER 0x0000004
330 #define VER_PLATFORMID 0x0000008
331 #define VER_SERVICEPACKMINOR 0x0000010
332 #define VER_SERVICEPACKMAJOR 0x0000020
333 #define VER_SUITENAME 0x0000040
334 #define VER_PRODUCT_TYPE 0x0000080
335 
336 #define VER_NT_WORKSTATION 0x0000001
337 #define VER_NT_DOMAIN_CONTROLLER 0x0000002
338 #define VER_NT_SERVER 0x0000003
339 
340 #define VER_PLATFORM_WIN32s 0
341 #define VER_PLATFORM_WIN32_WINDOWS 1
342 #define VER_PLATFORM_WIN32_NT 2
343 
344 typedef union _RTL_RUN_ONCE {
345  PVOID Ptr;
RTL_RUN_ONCE
Definition: rtltypes.h:346
* PRTL_RUN_ONCE
Definition: rtltypes.h:346

◆ $endif() [2/2]

$endif ( _NTDDK_  )

Definition at line 2487 of file iofuncs.h.

2495 {
2496  PriorityInfo->Size = sizeof(IO_PRIORITY_INFO);
2497  PriorityInfo->ThreadPriority = 0xffff;
2498  PriorityInfo->IoPriority = IoPriorityNormal;
2499  PriorityInfo->PagePriority = 0;
2500 }
struct _IO_PRIORITY_INFO IO_PRIORITY_INFO
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD _Inout_ PIO_PRIORITY_INFO PriorityInfo
Definition: fltkernel.h:2653

◆ $if()

$if ( _WDMDDK_  )

Kernel definitions for AMD64

Kernel definitions for ARM

Definition at line 5 of file rtltypes.h.

29  {
30  ULONG SizeOfBitMap;
31  PULONG Buffer;
* PRTL_BITMAP
Definition: rtltypes.h:32
RTL_BITMAP
Definition: rtltypes.h:32
unsigned int * PULONG
Definition: retypes.h:1
unsigned int ULONG
Definition: retypes.h:1
IN BOOLEAN OUT PSTR Buffer
Definition: progress.h:34

◆ __drv_freesMem()

_IRQL_requires_same_ _In_ __drv_freesMem ( Mem  )

Definition at line 1315 of file exfuncs.h.

1316 {
1317  Lookaside->L.TotalFrees++;
1318 #ifdef NONAMELESSUNION
1319  if (ExQueryDepthSList(&Lookaside->L.u.ListHead) >= Lookaside->L.Depth) {
1320  Lookaside->L.u3.FreeMisses++;
1321  (Lookaside->L.u5.Free)(Entry);
1322  } else {
1323 #if defined(_WIN2K_COMPAT_SLIST_USAGE) && defined(_X86_)
1324  ExInterlockedPushEntrySList(&Lookaside->L.u.ListHead,
1326  &Lookaside->Lock__ObsoleteButDoNotDelete);
1327 #else
1329 #endif
1330  }
1331 #else /* NONAMELESSUNION */
1332  if (ExQueryDepthSList(&Lookaside->L.ListHead) >= Lookaside->L.Depth) {
1333  Lookaside->L.FreeMisses++;
1334  (Lookaside->L.Free)(Entry);
1335  } else {
1336 #if defined(_WIN2K_COMPAT_SLIST_USAGE) && defined(_X86_)
1339  &Lookaside->Lock__ObsoleteButDoNotDelete);
1340 #else
1342 #endif
1343  }
1344 #endif /* NONAMELESSUNION */
1345 }
#define ExInterlockedPushEntrySList(SListHead, SListEntry, Lock)
Definition: exfuncs.h:163
_Inout_ PVOID Lookaside
Definition: fltkernel.h:2532
#define PSLIST_ENTRY
Definition: rtltypes.h:130
FORCEINLINE USHORT ExQueryDepthSList(_In_ PSLIST_HEADER SListHead)
Definition: exfuncs.h:153
NTKERNELAPI PSLIST_ENTRY FASTCALL InterlockedPushEntrySList(IN PSLIST_HEADER ListHead, IN PSLIST_ENTRY ListEntry)
Definition: interlocked.c:82
base of all file and directory entries
Definition: entries.h:82

◆ _Function_class_() [1/10]

_Function_class_ ( RTL_QUERY_REGISTRY_ROUTINE  )

◆ _Function_class_() [2/10]

_Function_class_ ( RTL_RUN_ONCE_INIT_FN  )

◆ _Function_class_() [3/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_COMPARE_ROUTINE  )

◆ _Function_class_() [4/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_ALLOCATE_ROUTINE  )

◆ _Function_class_() [5/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_FREE_ROUTINE  )

◆ _Function_class_() [6/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_MATCH_FUNCTION  )

◆ _Function_class_() [7/10]

_IRQL_requires_same_ _Function_class_ ( RTL_GENERIC_COMPARE_ROUTINE  )

◆ _Function_class_() [8/10]

_IRQL_requires_same_ _Function_class_ ( RTL_GENERIC_ALLOCATE_ROUTINE  )

◆ _Function_class_() [9/10]

_IRQL_requires_same_ _Function_class_ ( RTL_GENERIC_FREE_ROUTINE  )

◆ _Function_class_() [10/10]

_Function_class_ ( RTL_HEAP_COMMIT_ROUTINE  )

◆ _In_reads_bytes_opt_()

_In_ ULONG _In_reads_bytes_opt_ ( ValueLength  )

Variable Documentation

◆ ByteSize

◆ CommitAddress

_Inout_ PVOID* CommitAddress

Definition at line 574 of file rtltypes.h.

Referenced by _Function_class_().

◆ CommitSize

Definition at line 574 of file rtltypes.h.

◆ Context

Definition at line 47 of file rtltypes.h.

Referenced by DECLSPEC_ALIGN().

◆ EntryContext

Definition at line 47 of file rtltypes.h.

◆ FirstStruct

◆ MatchData

Definition at line 405 of file rtltypes.h.

◆ NlsMbCodePageTag

BOOLEAN* NlsMbCodePageTag

Definition at line 22 of file nls.c.

◆ NlsMbOemCodePageTag

BOOLEAN* NlsMbOemCodePageTag

Definition at line 29 of file nls.c.

Referenced by FsRtlIsDbcsInExpression().

◆ Parameter

Definition at line 353 of file rtltypes.h.

◆ PRTL_BITMAP

Definition at line 32 of file rtltypes.h.

◆ PRTL_RUN_ONCE

Definition at line 346 of file rtltypes.h.

◆ RTL_BITMAP

Definition at line 32 of file rtltypes.h.

◆ RTL_RUN_ONCE

Definition at line 346 of file rtltypes.h.

◆ RtlAllocateStringRoutine

NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine

◆ RtlFreeStringRoutine

◆ SecondStruct

◆ UserData

Definition at line 405 of file rtltypes.h.

◆ ValueLength

_In_ ULONG _In_ ULONG ValueLength

Definition at line 47 of file rtltypes.h.

◆ ValueType

_In_ ULONG ValueType

Definition at line 45 of file rtltypes.h.