ReactOS 0.4.15-dev-7958-gcd0bb1a
rtltypes.h File Reference

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 RTL_QUERY_REGISTRY_TYPECHECK   0x00000100
 
#define RTL_QUERY_REGISTRY_TYPECHECK_SHIFT   24
 
#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 RTL_QUERY_REGISTRY_ROUTINE * PRTL_QUERY_REGISTRY_ROUTINE
 
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 _Inout_opt_ PVOID Parameter
 
typedef _Inout_opt_ PVOID _Inout_opt_ PVOIDContext
 
typedef RTL_RUN_ONCE_INIT_FN * PRTL_RUN_ONCE_INIT_FN
 
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  _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 RTL_QUERY_REGISTRY_ROUTINE)(_In_z_ PWSTR ValueName
 
_In_ ULONG _In_reads_bytes_opt_ (ValueLength) PVOID ValueData
 
 $endif (_WDMDDK_) $if(_NTDDK_||_WINNT_) typedef union _RTL_RUN_ONCE
 
typedef _Function_class_ (RTL_RUN_ONCE_INIT_FN) _IRQL_requires_same_ ULONG NTAPI RTL_RUN_ONCE_INIT_FN(_Inout_ PRTL_RUN_ONCE RunOnce
 
 $endif (_NTDDK_||_WINNT_) $if(_NTDDK_) typedef enum _TABLE_SEARCH_RESULT
 
_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 _In_opt_ PVOID EntryContext
 
BOOLEANNlsMbCodePageTag
 
BOOLEANNlsMbOemCodePageTag
 
 RTL_RUN_ONCE
 
PRTL_RUN_ONCE
 
 TABLE_SEARCH_RESULT
 
_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 133 of file rtltypes.h.

◆ _SLIST_HEADER_

#define _SLIST_HEADER_

Definition at line 78 of file rtltypes.h.

◆ EXCEPTION_COLLIDED_UNWIND

#define EXCEPTION_COLLIDED_UNWIND   0x40

Definition at line 160 of file rtltypes.h.

◆ EXCEPTION_EXIT_UNWIND

#define EXCEPTION_EXIT_UNWIND   0x04

Definition at line 156 of file rtltypes.h.

◆ EXCEPTION_MAXIMUM_PARAMETERS

#define EXCEPTION_MAXIMUM_PARAMETERS   15

Definition at line 168 of file rtltypes.h.

◆ EXCEPTION_NESTED_CALL

#define EXCEPTION_NESTED_CALL   0x10

Definition at line 158 of file rtltypes.h.

◆ EXCEPTION_NONCONTINUABLE

#define EXCEPTION_NONCONTINUABLE   0x01

Definition at line 154 of file rtltypes.h.

◆ EXCEPTION_STACK_INVALID

#define EXCEPTION_STACK_INVALID   0x08

Definition at line 157 of file rtltypes.h.

◆ EXCEPTION_TARGET_UNWIND

#define EXCEPTION_TARGET_UNWIND   0x20

Definition at line 159 of file rtltypes.h.

◆ EXCEPTION_UNWIND

#define EXCEPTION_UNWIND
Value:
#define EXCEPTION_EXIT_UNWIND
Definition: rtltypes.h:156
#define EXCEPTION_UNWINDING
Definition: rtltypes.h:155
#define EXCEPTION_TARGET_UNWIND
Definition: rtltypes.h:159
#define EXCEPTION_COLLIDED_UNWIND
Definition: rtltypes.h:160

Definition at line 161 of file rtltypes.h.

◆ EXCEPTION_UNWINDING

#define EXCEPTION_UNWINDING   0x02

Definition at line 155 of file rtltypes.h.

◆ HASH_ENTRY_KEY

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

Definition at line 544 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 165 of file rtltypes.h.

◆ IS_TARGET_UNWIND

#define IS_TARGET_UNWIND (   Flag)    (Flag & EXCEPTION_TARGET_UNWIND)

Definition at line 166 of file rtltypes.h.

◆ IS_UNWINDING

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

Definition at line 164 of file rtltypes.h.

◆ LONG_2ND_MOST_SIGNIFICANT_BIT

#define LONG_2ND_MOST_SIGNIFICANT_BIT   2

Definition at line 223 of file rtltypes.h.

◆ LONG_3RD_MOST_SIGNIFICANT_BIT

#define LONG_3RD_MOST_SIGNIFICANT_BIT   1

Definition at line 222 of file rtltypes.h.

◆ LONG_LEAST_SIGNIFICANT_BIT

#define LONG_LEAST_SIGNIFICANT_BIT   0

Definition at line 221 of file rtltypes.h.

◆ LONG_MOST_SIGNIFICANT_BIT

#define LONG_MOST_SIGNIFICANT_BIT   3

Definition at line 224 of file rtltypes.h.

◆ NLS_MB_CODE_PAGE_TAG

#define NLS_MB_CODE_PAGE_TAG   (*NlsMbCodePageTag)

Definition at line 212 of file rtltypes.h.

◆ NLS_MB_OEM_CODE_PAGE_TAG

#define NLS_MB_OEM_CODE_PAGE_TAG   (*NlsMbOemCodePageTag)

Definition at line 215 of file rtltypes.h.

◆ PSLIST_ENTRY

#define PSLIST_ENTRY   PSINGLE_LIST_ENTRY

Definition at line 134 of file rtltypes.h.

◆ RTL_HASH_ALLOCATED_HEADER [1/2]

#define RTL_HASH_ALLOCATED_HEADER   0x00000001

Definition at line 513 of file rtltypes.h.

◆ RTL_HASH_ALLOCATED_HEADER [2/2]

#define RTL_HASH_ALLOCATED_HEADER   0x00000001

Definition at line 513 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_QUERY_REGISTRY_TYPECHECK

#define RTL_QUERY_REGISTRY_TYPECHECK   0x00000100

◆ RTL_QUERY_REGISTRY_TYPECHECK_SHIFT

#define RTL_QUERY_REGISTRY_TYPECHECK_SHIFT   24

◆ 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 226 of file rtltypes.h.

◆ SHORT_LEAST_SIGNIFICANT_BIT

#define SHORT_LEAST_SIGNIFICANT_BIT   0

Definition at line 218 of file rtltypes.h.

◆ SHORT_MOST_SIGNIFICANT_BIT

#define SHORT_MOST_SIGNIFICANT_BIT   1

Definition at line 219 of file rtltypes.h.

◆ SLIST_ENTRY

#define SLIST_ENTRY   SINGLE_LIST_ENTRY

Definition at line 132 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

◆ Context

Definition at line 324 of file rtltypes.h.

◆ EXCEPTION_POINTERS

◆ EXCEPTION_RECORD

◆ EXCEPTION_RECORD32

◆ EXCEPTION_RECORD64

◆ GENERATE_NAME_CONTEXT

◆ LPOSVERSIONINFO

Definition at line 295 of file rtltypes.h.

◆ LPOSVERSIONINFOA

◆ LPOSVERSIONINFOEX

Definition at line 292 of file rtltypes.h.

◆ LPOSVERSIONINFOEXA

◆ LPOSVERSIONINFOEXW

◆ LPOSVERSIONINFOW

◆ OSVERSIONINFO

Definition at line 293 of file rtltypes.h.

◆ OSVERSIONINFOA

◆ OSVERSIONINFOEX

Definition at line 290 of file rtltypes.h.

◆ OSVERSIONINFOEXA

◆ OSVERSIONINFOEXW

◆ OSVERSIONINFOW

◆ Parameter

Definition at line 323 of file rtltypes.h.

◆ 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 228 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 232 of file rtltypes.h.

◆ PGENERATE_NAME_CONTEXT

◆ POSVERSIONINFO

Definition at line 294 of file rtltypes.h.

◆ POSVERSIONINFOA

◆ POSVERSIONINFOEX

Definition at line 291 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 400 of file rtltypes.h.

◆ PRTL_AVL_COMPARE_ROUTINE

typedef RTL_AVL_COMPARE_ROUTINE* PRTL_AVL_COMPARE_ROUTINE

Definition at line 391 of file rtltypes.h.

◆ PRTL_AVL_FREE_ROUTINE

typedef RTL_AVL_FREE_ROUTINE* PRTL_AVL_FREE_ROUTINE

Definition at line 408 of file rtltypes.h.

◆ PRTL_AVL_MATCH_FUNCTION

typedef RTL_AVL_MATCH_FUNCTION* PRTL_AVL_MATCH_FUNCTION

Definition at line 417 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 568 of file rtltypes.h.

◆ PRTL_GENERIC_ALLOCATE_ROUTINE

typedef RTL_GENERIC_ALLOCATE_ROUTINE* PRTL_GENERIC_ALLOCATE_ROUTINE

Definition at line 467 of file rtltypes.h.

◆ PRTL_GENERIC_COMPARE_ROUTINE

typedef RTL_GENERIC_COMPARE_ROUTINE* PRTL_GENERIC_COMPARE_ROUTINE

Definition at line 458 of file rtltypes.h.

◆ PRTL_GENERIC_FREE_ROUTINE

typedef RTL_GENERIC_FREE_ROUTINE* PRTL_GENERIC_FREE_ROUTINE

Definition at line 475 of file rtltypes.h.

◆ PRTL_GENERIC_TABLE

◆ PRTL_HEAP_PARAMETERS

◆ PRTL_OSVERSIONINFOEXW

◆ PRTL_OSVERSIONINFOW

◆ PRTL_QUERY_REGISTRY_ROUTINE

typedef RTL_QUERY_REGISTRY_ROUTINE* PRTL_QUERY_REGISTRY_ROUTINE

Definition at line 53 of file rtltypes.h.

◆ PRTL_QUERY_REGISTRY_TABLE

◆ PRTL_RUN_ONCE_INIT_FN

typedef RTL_RUN_ONCE_INIT_FN* PRTL_RUN_ONCE_INIT_FN

Definition at line 325 of file rtltypes.h.

◆ PRTL_SPLAY_LINKS

◆ PSLIST_ENTRY32

Definition at line 136 of file rtltypes.h.

◆ PSLIST_HEADER

typedef union _SLIST_HEADER * PSLIST_HEADER

◆ PSLIST_HEADER32

Definition at line 147 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 136 of file rtltypes.h.

◆ SLIST_HEADER

typedef union _SLIST_HEADER SLIST_HEADER

◆ SLIST_HEADER32

Definition at line 147 of file rtltypes.h.

◆ TIME_FIELDS

◆ UNICODE_PREFIX_TABLE

◆ UNICODE_PREFIX_TABLE_ENTRY

Enumeration Type Documentation

◆ _RTL_GENERIC_COMPARE_RESULTS

Enumerator
GenericLessThan 
GenericGreaterThan 
GenericEqual 

Definition at line 375 of file rtltypes.h.

375 {
@ GenericLessThan
Definition: rtltypes.h:376
@ GenericEqual
Definition: rtltypes.h:378
@ GenericGreaterThan
Definition: rtltypes.h:377
enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS

Function Documentation

◆ $endif() [1/3]

$endif ( _NTDDK_  )

Definition at line 1144 of file iofuncs.h.

2502{
2503 PriorityInfo->Size = sizeof(IO_PRIORITY_INFO);
2504 PriorityInfo->ThreadPriority = 0xffff;
2505 PriorityInfo->IoPriority = IoPriorityNormal;
2506 PriorityInfo->PagePriority = 0;
2507}
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD _Inout_ PIO_PRIORITY_INFO PriorityInfo
Definition: fltkernel.h:2654
struct _IO_PRIORITY_INFO IO_PRIORITY_INFO
@ IoPriorityNormal
Definition: iotypes.h:1233

◆ $endif() [2/3]

$endif ( _NTDDK_||  _WINNT_)

Definition at line 329 of file rtltypes.h.

368 {
369 TableEmptyTree,
370 TableFoundNode,
371 TableInsertAsLeft,
372 TableInsertAsRight
TABLE_SEARCH_RESULT
Definition: rtltypes.h:373

◆ $endif() [3/3]

$endif ( _WDMDDK_  )

Definition at line 298 of file rtltypes.h.

304 {0}
305
306#define RTL_RUN_ONCE_CHECK_ONLY 0x00000001UL
307#define RTL_RUN_ONCE_ASYNC 0x00000002UL
308#define RTL_RUN_ONCE_INIT_FAILED 0x00000004UL
309
310#define RTL_RUN_ONCE_CTX_RESERVED_BITS 2
311
312typedef union _RTL_RUN_ONCE {
313 PVOID Ptr;
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
RTL_RUN_ONCE
Definition: rtltypes.h:314
* PRTL_RUN_ONCE
Definition: rtltypes.h:314

◆ $if()

$if ( _WDMDDK_  )

Kernel definitions for ARM64

Kernel definitions for AMD64

Kernel definitions for ARM

Definition at line 5 of file rtltypes.h.

32 {
33 ULONG SizeOfBitMap;
Definition: bufpool.h:45
uint32_t * PULONG
Definition: typedefs.h:59
uint32_t ULONG
Definition: typedefs.h:59
* PRTL_BITMAP
Definition: rtltypes.h:35
RTL_BITMAP
Definition: rtltypes.h:35

◆ __drv_freesMem()

_IRQL_requires_same_ _In_ __drv_freesMem ( Mem  )

Definition at line 1523 of file exfuncs.h.

1524{
1525 Lookaside->L.TotalFrees++;
1526#ifdef NONAMELESSUNION
1527 if (ExQueryDepthSList(&Lookaside->L.u.ListHead) >= Lookaside->L.Depth) {
1528 Lookaside->L.u3.FreeMisses++;
1529 (Lookaside->L.u5.Free)(Entry);
1530 } else {
1531#if defined(_WIN2K_COMPAT_SLIST_USAGE) && defined(_X86_)
1534 &Lookaside->Lock__ObsoleteButDoNotDelete);
1535#else
1537#endif
1538 }
1539#else /* NONAMELESSUNION */
1540 if (ExQueryDepthSList(&Lookaside->L.ListHead) >= Lookaside->L.Depth) {
1541 Lookaside->L.FreeMisses++;
1542 (Lookaside->L.Free)(Entry);
1543 } else {
1544#if defined(_WIN2K_COMPAT_SLIST_USAGE) && defined(_X86_)
1547 &Lookaside->Lock__ObsoleteButDoNotDelete);
1548#else
1550#endif
1551 }
1552#endif /* NONAMELESSUNION */
1553}
base of all file and directory entries
Definition: entries.h:83
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_opt_ ULONG _Out_ WDFLOOKASIDE * Lookaside
Definition: wdfmemory.h:414
#define ExInterlockedPushEntrySList(SListHead, SListEntry, Lock)
Definition: exfuncs.h:163
FORCEINLINE USHORT ExQueryDepthSList(_In_ PSLIST_HEADER SListHead)
Definition: exfuncs.h:153
#define InterlockedPushEntrySList(SListHead, SListEntry)
Definition: rtlfuncs.h:3389
#define PSLIST_ENTRY
Definition: rtltypes.h:134

◆ _Function_class_() [1/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_ALLOCATE_ROUTINE  )

◆ _Function_class_() [2/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_COMPARE_ROUTINE  )

◆ _Function_class_() [3/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_FREE_ROUTINE  )

◆ _Function_class_() [4/10]

_IRQL_requires_same_ _Function_class_ ( RTL_AVL_MATCH_FUNCTION  )

◆ _Function_class_() [5/10]

_IRQL_requires_same_ _Function_class_ ( RTL_GENERIC_ALLOCATE_ROUTINE  )

◆ _Function_class_() [6/10]

_IRQL_requires_same_ _Function_class_ ( RTL_GENERIC_COMPARE_ROUTINE  )

◆ _Function_class_() [7/10]

_IRQL_requires_same_ _Function_class_ ( RTL_GENERIC_FREE_ROUTINE  )

◆ _Function_class_() [8/10]

_Function_class_ ( RTL_HEAP_COMMIT_ROUTINE  )

◆ _Function_class_() [9/10]

_Function_class_ ( RTL_QUERY_REGISTRY_ROUTINE  )

◆ _Function_class_() [10/10]

typedef _Function_class_ ( RTL_RUN_ONCE_INIT_FN  )

◆ _In_reads_bytes_opt_()

_In_ ULONG _In_reads_bytes_opt_ ( ValueLength  )

Variable Documentation

◆ ByteSize

◆ CommitAddress

_Inout_ PVOID* CommitAddress

Definition at line 584 of file rtltypes.h.

Referenced by _Function_class_().

◆ CommitSize

Definition at line 585 of file rtltypes.h.

◆ EntryContext

Definition at line 52 of file rtltypes.h.

◆ FirstStruct

◆ MatchData

Definition at line 416 of file rtltypes.h.

Referenced by RegFindRecurse().

◆ NlsMbCodePageTag

BOOLEAN* NlsMbCodePageTag
extern

Definition at line 17 of file nlsboot.c.

◆ NlsMbOemCodePageTag

BOOLEAN* NlsMbOemCodePageTag
extern

Definition at line 19 of file nlsboot.c.

◆ PRTL_BITMAP

Definition at line 35 of file rtltypes.h.

◆ PRTL_RUN_ONCE

* PRTL_RUN_ONCE

Definition at line 314 of file rtltypes.h.

◆ RTL_BITMAP

Definition at line 35 of file rtltypes.h.

◆ RTL_RUN_ONCE

RTL_RUN_ONCE

Definition at line 314 of file rtltypes.h.

◆ RtlAllocateStringRoutine

NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine
extern

◆ RtlFreeStringRoutine

NTKERNELAPI const PRTL_FREE_STRING_ROUTINE RtlFreeStringRoutine
extern

◆ SecondStruct

◆ TABLE_SEARCH_RESULT

◆ UserData

Definition at line 415 of file rtltypes.h.

◆ ValueLength

Definition at line 50 of file rtltypes.h.

◆ ValueType

Definition at line 48 of file rtltypes.h.