ReactOS  0.4.15-dev-1377-ga59cecd
rtltypes.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Runtime Library Types *
3  ******************************************************************************/
4 
6 #define RTL_REGISTRY_ABSOLUTE 0
7 #define RTL_REGISTRY_SERVICES 1
8 #define RTL_REGISTRY_CONTROL 2
9 #define RTL_REGISTRY_WINDOWS_NT 3
10 #define RTL_REGISTRY_DEVICEMAP 4
11 #define RTL_REGISTRY_USER 5
12 #define RTL_REGISTRY_MAXIMUM 6
13 #define RTL_REGISTRY_HANDLE 0x40000000
14 #define RTL_REGISTRY_OPTIONAL 0x80000000
15 
16 /* RTL_QUERY_REGISTRY_TABLE.Flags */
17 #define RTL_QUERY_REGISTRY_SUBKEY 0x00000001
18 #define RTL_QUERY_REGISTRY_TOPKEY 0x00000002
19 #define RTL_QUERY_REGISTRY_REQUIRED 0x00000004
20 #define RTL_QUERY_REGISTRY_NOVALUE 0x00000008
21 #define RTL_QUERY_REGISTRY_NOEXPAND 0x00000010
22 #define RTL_QUERY_REGISTRY_DIRECT 0x00000020
23 #define RTL_QUERY_REGISTRY_DELETE 0x00000040
24 #define RTL_QUERY_REGISTRY_TYPECHECK 0x00000100
25 
26 #define RTL_QUERY_REGISTRY_TYPECHECK_SHIFT 24
27 
28 #define HASH_STRING_ALGORITHM_DEFAULT 0
29 #define HASH_STRING_ALGORITHM_X65599 1
30 #define HASH_STRING_ALGORITHM_INVALID 0xffffffff
31 
32 typedef struct _RTL_BITMAP {
34  PULONG Buffer;
36 
37 typedef struct _RTL_BITMAP_RUN {
41 
42 _Function_class_(RTL_QUERY_REGISTRY_ROUTINE)
45 typedef NTSTATUS
46 (NTAPI RTL_QUERY_REGISTRY_ROUTINE)(
53 typedef RTL_QUERY_REGISTRY_ROUTINE *PRTL_QUERY_REGISTRY_ROUTINE;
54 
55 typedef struct _RTL_QUERY_REGISTRY_TABLE {
57  ULONG Flags;
64 
65 typedef struct _TIME_FIELDS {
66  CSHORT Year;
67  CSHORT Month;
68  CSHORT Day;
69  CSHORT Hour;
70  CSHORT Minute;
71  CSHORT Second;
75 
76 /* Slist Header */
77 #ifndef _SLIST_HEADER_
78 #define _SLIST_HEADER_
79 
80 #if defined(_WIN64)
81 
82 typedef struct DECLSPEC_ALIGN(16) _SLIST_ENTRY {
83  struct _SLIST_ENTRY *Next;
85 
86 typedef struct _SLIST_ENTRY32 {
87  ULONG Next;
89 
90 typedef union DECLSPEC_ALIGN(16) _SLIST_HEADER {
91  _ANONYMOUS_STRUCT struct {
95  struct {
96  ULONGLONG Depth:16;
97  ULONGLONG Sequence:9;
98  ULONGLONG NextEntry:39;
99  ULONGLONG HeaderType:1;
100  ULONGLONG Init:1;
101  ULONGLONG Reserved:59;
102  ULONGLONG Region:3;
103  } Header8;
104  struct {
105  ULONGLONG Depth:16;
106  ULONGLONG Sequence:48;
107  ULONGLONG HeaderType:1;
108  ULONGLONG Init:1;
110  ULONGLONG NextEntry:60;
111  } Header16;
112  struct {
113  ULONGLONG Depth:16;
114  ULONGLONG Sequence:48;
115  ULONGLONG HeaderType:1;
117  ULONGLONG NextEntry:60;
118  } HeaderX64;
120 
121 typedef union _SLIST_HEADER32 {
123  _ANONYMOUS_STRUCT struct {
124  SLIST_ENTRY32 Next;
125  USHORT Depth;
126  USHORT Sequence;
127  } DUMMYSTRUCTNAME;
129 
130 #else
131 
132 #define SLIST_ENTRY SINGLE_LIST_ENTRY
133 #define _SLIST_ENTRY _SINGLE_LIST_ENTRY
134 #define PSLIST_ENTRY PSINGLE_LIST_ENTRY
135 
137 
138 typedef union _SLIST_HEADER {
140  _ANONYMOUS_STRUCT struct {
144  } DUMMYSTRUCTNAME;
146 
148 
149 #endif /* defined(_WIN64) */
150 
151 #endif /* _SLIST_HEADER_ */
152 
153 /* Exception record flags */
154 #define EXCEPTION_NONCONTINUABLE 0x01
155 #define EXCEPTION_UNWINDING 0x02
156 #define EXCEPTION_EXIT_UNWIND 0x04
157 #define EXCEPTION_STACK_INVALID 0x08
158 #define EXCEPTION_NESTED_CALL 0x10
159 #define EXCEPTION_TARGET_UNWIND 0x20
160 #define EXCEPTION_COLLIDED_UNWIND 0x40
161 #define EXCEPTION_UNWIND (EXCEPTION_UNWINDING | EXCEPTION_EXIT_UNWIND | \
162  EXCEPTION_TARGET_UNWIND | EXCEPTION_COLLIDED_UNWIND)
163 
164 #define IS_UNWINDING(Flag) ((Flag & EXCEPTION_UNWIND) != 0)
165 #define IS_DISPATCHING(Flag) ((Flag & EXCEPTION_UNWIND) == 0)
166 #define IS_TARGET_UNWIND(Flag) (Flag & EXCEPTION_TARGET_UNWIND)
167 
168 #define EXCEPTION_MAXIMUM_PARAMETERS 15
169 
170 /* Exception records */
171 typedef struct _EXCEPTION_RECORD {
179 
180 typedef struct _EXCEPTION_RECORD32 {
188 
189 typedef struct _EXCEPTION_RECORD64 {
198 
199 typedef struct _EXCEPTION_POINTERS {
203 
204 #ifdef _NTSYSTEM_
206 #define NLS_MB_CODE_PAGE_TAG NlsMbCodePageTag
208 #define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
209 #else
211 extern BOOLEAN *NlsMbCodePageTag;
212 #define NLS_MB_CODE_PAGE_TAG (*NlsMbCodePageTag)
215 #define NLS_MB_OEM_CODE_PAGE_TAG (*NlsMbOemCodePageTag)
216 #endif
217 
218 #define SHORT_LEAST_SIGNIFICANT_BIT 0
219 #define SHORT_MOST_SIGNIFICANT_BIT 1
220 
221 #define LONG_LEAST_SIGNIFICANT_BIT 0
222 #define LONG_3RD_MOST_SIGNIFICANT_BIT 1
223 #define LONG_2ND_MOST_SIGNIFICANT_BIT 2
224 #define LONG_MOST_SIGNIFICANT_BIT 3
225 
226 #define RTLVERLIB_DDI(x) Wdmlib##x
227 
228 typedef BOOLEAN
230  _In_ ULONG Version);
231 
232 typedef BOOLEAN
234  _In_ ULONG Version);
235 
236 typedef struct _OSVERSIONINFOA {
244 
245 typedef struct _OSVERSIONINFOW {
253 
254 typedef struct _OSVERSIONINFOEXA {
267 
268 typedef struct _OSVERSIONINFOEXW {
281 
282 #ifdef UNICODE
289 #else
296 #endif /* UNICODE */
297 
299 $if (_NTDDK_)
300 
301 #ifndef _RTL_RUN_ONCE_DEF
302 #define _RTL_RUN_ONCE_DEF
303 
304 #define RTL_RUN_ONCE_INIT {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 
312 #define RTL_HASH_ALLOCATED_HEADER 0x00000001
313 
314 #define RTL_HASH_RESERVED_SIGNATURE 0
315 
316 /* RtlVerifyVersionInfo() ComparisonType */
317 
318 #define VER_EQUAL 1
319 #define VER_GREATER 2
320 #define VER_GREATER_EQUAL 3
321 #define VER_LESS 4
322 #define VER_LESS_EQUAL 5
323 #define VER_AND 6
324 #define VER_OR 7
325 
326 #define VER_CONDITION_MASK 7
327 #define VER_NUM_BITS_PER_CONDITION_MASK 3
328 
329 /* RtlVerifyVersionInfo() TypeMask */
330 
331 #define VER_MINORVERSION 0x0000001
332 #define VER_MAJORVERSION 0x0000002
333 #define VER_BUILDNUMBER 0x0000004
334 #define VER_PLATFORMID 0x0000008
335 #define VER_SERVICEPACKMINOR 0x0000010
336 #define VER_SERVICEPACKMAJOR 0x0000020
337 #define VER_SUITENAME 0x0000040
338 #define VER_PRODUCT_TYPE 0x0000080
339 
340 #define VER_NT_WORKSTATION 0x0000001
341 #define VER_NT_DOMAIN_CONTROLLER 0x0000002
342 #define VER_NT_SERVER 0x0000003
343 
344 #define VER_PLATFORM_WIN32s 0
345 #define VER_PLATFORM_WIN32_WINDOWS 1
346 #define VER_PLATFORM_WIN32_NT 2
347 
348 typedef union _RTL_RUN_ONCE {
349  PVOID Ptr;
351 
354 typedef ULONG /* LOGICAL */
356  _Inout_ PRTL_RUN_ONCE RunOnce,
359 
360 #endif /* _RTL_RUN_ONCE_DEF */
361 
362 typedef enum _TABLE_SEARCH_RESULT {
368 
374 
375 // Forwarder
376 struct _RTL_AVL_TABLE;
377 
379 _Function_class_(RTL_AVL_COMPARE_ROUTINE)
381 (NTAPI RTL_AVL_COMPARE_ROUTINE) (
382  _In_ struct _RTL_AVL_TABLE *Table,
385 typedef RTL_AVL_COMPARE_ROUTINE *PRTL_AVL_COMPARE_ROUTINE;
386 
388 _Function_class_(RTL_AVL_ALLOCATE_ROUTINE)
390 typedef PVOID
391 (NTAPI RTL_AVL_ALLOCATE_ROUTINE) (
392  _In_ struct _RTL_AVL_TABLE *Table,
394 typedef RTL_AVL_ALLOCATE_ROUTINE *PRTL_AVL_ALLOCATE_ROUTINE;
395 
397 _Function_class_(RTL_AVL_FREE_ROUTINE)
398 typedef VOID
399 (NTAPI RTL_AVL_FREE_ROUTINE) (
400  _In_ struct _RTL_AVL_TABLE *Table,
402 typedef RTL_AVL_FREE_ROUTINE *PRTL_AVL_FREE_ROUTINE;
403 
405 _Function_class_(RTL_AVL_MATCH_FUNCTION)
406 typedef NTSTATUS
407 (NTAPI RTL_AVL_MATCH_FUNCTION) (
408  _In_ struct _RTL_AVL_TABLE *Table,
411 typedef RTL_AVL_MATCH_FUNCTION *PRTL_AVL_MATCH_FUNCTION;
412 
413 typedef struct _RTL_BALANCED_LINKS {
420 
421 typedef struct _RTL_AVL_TABLE {
434 
435 typedef struct _RTL_SPLAY_LINKS {
440 
441 #ifndef RTL_USE_AVL_TABLES
442 
443 struct _RTL_GENERIC_TABLE;
444 
446 _Function_class_(RTL_GENERIC_COMPARE_ROUTINE)
448 (NTAPI RTL_GENERIC_COMPARE_ROUTINE) (
449  _In_ struct _RTL_GENERIC_TABLE *Table,
452 typedef RTL_GENERIC_COMPARE_ROUTINE *PRTL_GENERIC_COMPARE_ROUTINE;
453 
455 _Function_class_(RTL_GENERIC_ALLOCATE_ROUTINE)
457 typedef PVOID
458 (NTAPI RTL_GENERIC_ALLOCATE_ROUTINE) (
459  _In_ struct _RTL_GENERIC_TABLE *Table,
461 typedef RTL_GENERIC_ALLOCATE_ROUTINE *PRTL_GENERIC_ALLOCATE_ROUTINE;
462 
464 _Function_class_(RTL_GENERIC_FREE_ROUTINE)
465 typedef VOID
466 (NTAPI RTL_GENERIC_FREE_ROUTINE) (
467  _In_ struct _RTL_GENERIC_TABLE *Table,
469 typedef RTL_GENERIC_FREE_ROUTINE *PRTL_GENERIC_FREE_ROUTINE;
470 
471 typedef struct _RTL_GENERIC_TABLE {
482 
483 #endif /* !RTL_USE_AVL_TABLES */
484 
485 #ifdef RTL_USE_AVL_TABLES
486 
487 #undef RTL_GENERIC_COMPARE_ROUTINE
488 #undef PRTL_GENERIC_COMPARE_ROUTINE
489 #undef RTL_GENERIC_ALLOCATE_ROUTINE
490 #undef PRTL_GENERIC_ALLOCATE_ROUTINE
491 #undef RTL_GENERIC_FREE_ROUTINE
492 #undef PRTL_GENERIC_FREE_ROUTINE
493 #undef RTL_GENERIC_TABLE
494 #undef PRTL_GENERIC_TABLE
495 
496 #define RTL_GENERIC_COMPARE_ROUTINE RTL_AVL_COMPARE_ROUTINE
497 #define PRTL_GENERIC_COMPARE_ROUTINE PRTL_AVL_COMPARE_ROUTINE
498 #define RTL_GENERIC_ALLOCATE_ROUTINE RTL_AVL_ALLOCATE_ROUTINE
499 #define PRTL_GENERIC_ALLOCATE_ROUTINE PRTL_AVL_ALLOCATE_ROUTINE
500 #define RTL_GENERIC_FREE_ROUTINE RTL_AVL_FREE_ROUTINE
501 #define PRTL_GENERIC_FREE_ROUTINE PRTL_AVL_FREE_ROUTINE
502 #define RTL_GENERIC_TABLE RTL_AVL_TABLE
503 #define PRTL_GENERIC_TABLE PRTL_AVL_TABLE
504 
505 #endif /* RTL_USE_AVL_TABLES */
506 
507 #define RTL_HASH_ALLOCATED_HEADER 0x00000001
508 
513 
519 
525 
526 typedef struct _RTL_DYNAMIC_HASH_TABLE {
537 
538 #define HASH_ENTRY_KEY(x) ((x)->Signature)
539 
540 $endif (_NTDDK_)
541 $if (_NTIFS_)
542 
543 #define RTL_SYSTEM_VOLUME_INFORMATION_FOLDER L"System Volume Information"
544 
545 _Function_class_(RTL_ALLOCATE_STRING_ROUTINE)
548 typedef PVOID
549 (NTAPI *PRTL_ALLOCATE_STRING_ROUTINE)(
551 
552 #if _WIN32_WINNT >= 0x0600
553 _Function_class_(RTL_REALLOCATE_STRING_ROUTINE)
556 typedef PVOID
557 (NTAPI *PRTL_REALLOCATE_STRING_ROUTINE)(
559  IN PVOID Buffer);
560 #endif
561 
562 typedef VOID
565 
566 extern NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine;
568 
569 #if _WIN32_WINNT >= 0x0600
570 extern NTKERNELAPI const PRTL_REALLOCATE_STRING_ROUTINE RtlReallocateStringRoutine;
571 #endif
572 
573 _Function_class_(RTL_HEAP_COMMIT_ROUTINE)
575 typedef NTSTATUS
577  _In_ PVOID Base,
580 
581 typedef struct _RTL_HEAP_PARAMETERS {
582  ULONG Length;
594 
595 #if (NTDDI_VERSION >= NTDDI_WIN2K)
596 
597 typedef struct _GENERATE_NAME_CONTEXT {
600  _Field_range_(<=, 8) UCHAR NameLength;
602  _Field_range_(<=, 4) ULONG ExtensionLength;
606 
614 
615 typedef struct _PREFIX_TABLE {
620 
629 
630 typedef struct _UNICODE_PREFIX_TABLE {
636 
637 #endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
638 
639 #if (NTDDI_VERSION >= NTDDI_WINXP)
640 typedef struct _COMPRESSED_DATA_INFO {
647  ULONG CompressedChunkSizes[ANYSIZE_ARRAY];
649 #endif
650 $endif (_NTIFS_)
NTSTATUS ExceptionCode
Definition: rtltypes.h:181
USHORT Weekday
Definition: env_spec_w32.h:718
ULONG dwBuildNumber
Definition: rtltypes.h:272
#define _SLIST_ENTRY
Definition: rtltypes.h:133
BOOLEAN CheckSumInserted
Definition: rtltypes.h:599
#define SLIST_ENTRY
Definition: rtltypes.h:132
PULONG Buffer
Definition: typedefs.h:91
struct _RTL_BALANCED_LINKS * PRTL_BALANCED_LINKS
PSTRING Prefix
Definition: rtltypes.h:612
RTL_GENERIC_COMPARE_ROUTINE * PRTL_GENERIC_COMPARE_ROUTINE
Definition: rtltypes.h:452
ULONG dwOSVersionInfoSize
Definition: rtltypes.h:269
UCHAR wProductType
Definition: rtltypes.h:278
SLIST_HEADER SLIST_HEADER32
Definition: rtltypes.h:147
struct _EXCEPTION_RECORD * PEXCEPTION_RECORD
SIZE_T DeCommitTotalFreeThreshold
Definition: rtltypes.h:586
const uint16_t * PCWSTR
Definition: typedefs.h:57
#define IN
Definition: typedefs.h:39
_In_opt_ PALLOCATE_FUNCTION _In_opt_ PFREE_FUNCTION _In_ ULONG _In_ SIZE_T _In_ ULONG _In_ USHORT Depth
Definition: exfuncs.h:814
RTL_AVL_COMPARE_ROUTINE * PRTL_AVL_COMPARE_ROUTINE
Definition: rtltypes.h:385
Definition: rtltypes.h:509
ULONGLONG Alignment
Definition: rtltypes.h:139
ULONG NumberParameters
Definition: rtltypes.h:185
ASMGENDATA Table[]
Definition: genincdata.c:61
#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name)
BOOLEAN * NlsMbCodePageTag
Definition: nls.c:22
ULONG dwMajorVersion
Definition: rtltypes.h:238
ULONG ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: rtltypes.h:186
struct _RTL_DYNAMIC_HASH_TABLE RTL_DYNAMIC_HASH_TABLE
RTL_GENERIC_ALLOCATE_ROUTINE * PRTL_GENERIC_ALLOCATE_ROUTINE
Definition: rtltypes.h:461
POSVERSIONINFOA POSVERSIONINFO
Definition: rtltypes.h:294
struct _RTL_QUERY_REGISTRY_TABLE * PRTL_QUERY_REGISTRY_TABLE
#define _Post_invalid_
Definition: no_sal2.h:524
struct _UNICODE_PREFIX_TABLE_ENTRY * NextPrefixTree
Definition: rtltypes.h:624
USHORT wSuiteMask
Definition: rtltypes.h:263
ULONG dwPlatformId
Definition: rtltypes.h:273
CSHORT NodeTypeCode
Definition: rtltypes.h:616
#define ANYSIZE_ARRAY
Definition: typedefs.h:46
IN BOOLEAN OUT PSTR Buffer
Definition: progress.h:34
struct _OSVERSIONINFOEXW * POSVERSIONINFOEXW
struct _UNICODE_PREFIX_TABLE * PUNICODE_PREFIX_TABLE
ULONG dwMinorVersion
Definition: rtltypes.h:271
struct _PREFIX_TABLE PREFIX_TABLE
_Inout_ PVOID _Inout_ PSIZE_T CommitSize
Definition: rtltypes.h:578
uint16_t * PWSTR
Definition: typedefs.h:56
ULONG DepthOfTree
Definition: rtltypes.h:426
struct _RTL_BALANCED_LINKS RTL_BALANCED_LINKS
PUNICODE_STRING Prefix
Definition: rtltypes.h:627
RTL_DYNAMIC_HASH_TABLE_ENTRY HashEntry
Definition: rtltypes.h:521
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine
Definition: nt_native.h:1676
char CHAR
Definition: xmlstorage.h:175
struct DECLSPEC_ALIGN(16) _RTL_UMS_CONTEXT
Definition: rtltypes.h:1611
struct _OSVERSIONINFOW * POSVERSIONINFOW
enum _TABLE_SEARCH_RESULT TABLE_SEARCH_RESULT
LONG NTSTATUS
Definition: precomp.h:26
SLIST_ENTRY SLIST_ENTRY32
Definition: rtltypes.h:136
struct _EXCEPTION_RECORD64 EXCEPTION_RECORD64
_In_opt_ ULONG Base
Definition: rtlfuncs.h:2373
#define _NTIFS_
Definition: ifssupp.h:20
WCHAR szCSDVersion[128]
Definition: rtltypes.h:251
NTSTATUS ExceptionCode
Definition: rtltypes.h:190
ULONG DeleteCount
Definition: rtltypes.h:428
struct _RTL_BITMAP_RUN * PRTL_BITMAP_RUN
_Field_range_(<=, 8) UCHAR NameLength
struct _RTL_DYNAMIC_HASH_TABLE * PRTL_DYNAMIC_HASH_TABLE
#define _WDMDDK_
Definition: wdm.template.h:26
struct _PREFIX_TABLE_ENTRY * NextPrefixTree
Definition: rtltypes.h:610
RTL_QUERY_REGISTRY_ROUTINE * PRTL_QUERY_REGISTRY_ROUTINE
Definition: rtltypes.h:53
* PRTL_BITMAP
Definition: rtltypes.h:35
ULONG64 ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: rtltypes.h:196
BOOL Init(PUSERCONNECT UserCon)
Definition: dllmain.c:385
USHORT Sequence
Definition: rtltypes.h:143
_In_ PVOID Parameter
Definition: ldrtypes.h:241
USHORT wSuiteMask
Definition: rtltypes.h:277
struct _EXCEPTION_POINTERS EXCEPTION_POINTERS
ULONG dwMajorVersion
Definition: rtltypes.h:256
ULONG NumberParameters
Definition: rtltypes.h:194
_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
#define _In_opt_
Definition: no_sal2.h:212
PVOID ExceptionAddress
Definition: compat.h:211
PVOID TableContext
Definition: rtltypes.h:432
ULONG dwMajorVersion
Definition: rtltypes.h:270
uint32_t ULONG_PTR
Definition: typedefs.h:65
OSVERSIONINFOA OSVERSIONINFO
Definition: rtltypes.h:293
struct _EXCEPTION_POINTERS * PEXCEPTION_POINTERS
PVOID OrderedPointer
Definition: rtltypes.h:423
struct _RTL_GENERIC_TABLE * PRTL_GENERIC_TABLE
RTL_BALANCED_LINKS BalancedRoot
Definition: rtltypes.h:422
ULONG CLONG
Definition: umtypes.h:126
_In_ ULONG _In_ ULONG _In_opt_ PVOID Context
Definition: rtltypes.h:50
struct _RTL_BITMAP_RUN RTL_BITMAP_RUN
struct _COMPRESSED_DATA_INFO * PCOMPRESSED_DATA_INFO
struct _OSVERSIONINFOEXW * LPOSVERSIONINFOEXW
ULONG_PTR * PSIZE_T
Definition: typedefs.h:80
PRTL_QUERY_REGISTRY_ROUTINE QueryRoutine
Definition: nt_native.h:109
WCHAR ExtensionBuffer[4]
Definition: rtltypes.h:603
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
struct _RTL_HEAP_PARAMETERS RTL_HEAP_PARAMETERS
struct _PREFIX_TABLE_ENTRY * PPREFIX_TABLE_ENTRY
struct _RTL_DYNAMIC_HASH_TABLE_ENTRY * PRTL_DYNAMIC_HASH_TABLE_ENTRY
ULONG ExceptionFlags
Definition: rtltypes.h:173
RTL_GENERIC_FREE_ROUTINE * PRTL_GENERIC_FREE_ROUTINE
Definition: rtltypes.h:469
USHORT wServicePackMinor
Definition: rtltypes.h:262
struct _UNICODE_PREFIX_TABLE UNICODE_PREFIX_TABLE
Definition: rtltypes.h:621
struct _PREFIX_TABLE_ENTRY PREFIX_TABLE_ENTRY
union Alignment_ Alignment
unsigned char BOOLEAN
struct _OSVERSIONINFOA * LPOSVERSIONINFOA
struct _OSVERSIONINFOEXW RTL_OSVERSIONINFOEXW
#define NTKERNELAPI
#define _IRQL_requires_same_
Definition: driverspecs.h:215
struct _OSVERSIONINFOW * LPOSVERSIONINFOW
SIZE_T VirtualMemoryThreshold
Definition: rtltypes.h:588
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
struct _RTL_AVL_TABLE RTL_AVL_TABLE
void * PVOID
Definition: retypes.h:9
USHORT Milliseconds
Definition: env_spec_w32.h:717
CSHORT NameLength
Definition: rtltypes.h:623
struct _OSVERSIONINFOW RTL_OSVERSIONINFOW
ULONG dwOSVersionInfoSize
Definition: rtltypes.h:237
_ANONYMOUS_STRUCT struct _SLIST_HEADER::@3990 DUMMYSTRUCTNAME
ULONG dwBuildNumber
Definition: rtltypes.h:240
struct _OSVERSIONINFOEXA OSVERSIONINFOEXA
ULONG ExceptionAddress
Definition: rtltypes.h:184
struct _RTL_DYNAMIC_HASH_TABLE_ENTRY RTL_DYNAMIC_HASH_TABLE_ENTRY
PRTL_GENERIC_ALLOCATE_ROUTINE AllocateRoutine
Definition: rtltypes.h:478
ULONG dwMinorVersion
Definition: rtltypes.h:257
PCONTEXT ContextRecord
Definition: rtltypes.h:201
BOOLEAN * NlsMbOemCodePageTag
Definition: nls.c:29
struct _TIME_FIELDS TIME_FIELDS
#define __drv_allocatesMem(kind)
Definition: driverspecs.h:239
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]
Definition: compat.h:213
ULONG64 ExceptionAddress
Definition: rtltypes.h:193
ULONG dwMajorVersion
Definition: rtltypes.h:247
ULONG dwOSVersionInfoSize
Definition: rtltypes.h:255
SLIST_ENTRY Next
Definition: rtltypes.h:141
_IRQL_requires_same_ _In_ PVOID _In_ PVOID SecondStruct
Definition: rtltypes.h:383
CSHORT NodeTypeCode
Definition: rtltypes.h:622
CSHORT NameLength
Definition: rtltypes.h:609
__wchar_t WCHAR
Definition: xmlstorage.h:180
BOOLEAN(* PFN_RTL_IS_NTDDI_VERSION_AVAILABLE)(_In_ ULONG Version)
Definition: rtltypes.h:229
_Inout_ PVOID * CommitAddress
Definition: rtltypes.h:578
uint64_t ULONGLONG
Definition: typedefs.h:67
SLIST_HEADER * PSLIST_HEADER32
Definition: rtltypes.h:147
ULONG dwOSVersionInfoSize
Definition: rtltypes.h:246
PRTL_GENERIC_COMPARE_ROUTINE CompareRoutine
Definition: rtltypes.h:477
_RTL_GENERIC_COMPARE_RESULTS
Definition: rtltypes.h:369
ULONG WhichOrderedElement
Definition: rtltypes.h:424
ULONG NumberGenericTableElements
Definition: rtltypes.h:425
ULONG __unusedAlignment
Definition: rtltypes.h:195
NTSTATUS(* PRTL_HEAP_COMMIT_ROUTINE)(IN PVOID Base, IN OUT PVOID *CommitAddress, IN OUT PULONG CommitSize)
Definition: nt_native.h:1660
_In_ GUID _In_ PVOID ValueData
Definition: hubbusif.h:311
RTL_RUN_ONCE_INIT_FN * PRTL_RUN_ONCE_INIT_FN
Definition: winnt_old.h:2608
ULONG_PTR Signature
Definition: rtltypes.h:511
struct _UNICODE_PREFIX_TABLE_ENTRY * PUNICODE_PREFIX_TABLE_ENTRY
struct _COMPRESSED_DATA_INFO COMPRESSED_DATA_INFO
IN PVOID IN PVOID IN USHORT Version
Definition: pci.h:361
#define PSLIST_ENTRY
Definition: rtltypes.h:134
#define _Inout_
Definition: no_sal2.h:162
RTL_AVL_MATCH_FUNCTION * PRTL_AVL_MATCH_FUNCTION
Definition: rtltypes.h:411
NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine
ULONG NumberOfBits
Definition: typedefs.h:97
struct _OSVERSIONINFOW OSVERSIONINFOW
struct _RTL_HEAP_PARAMETERS * PRTL_HEAP_PARAMETERS
ULONG dwBuildNumber
Definition: rtltypes.h:249
RTL_RUN_ONCE
Definition: rtltypes.h:350
$endif(_WDMDDK_) $if(_NTDDK_) typedef union _RTL_RUN_ONCE
Definition: rtltypes.h:298
unsigned __int64 ULONG64
Definition: imports.h:198
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:240
unsigned char UCHAR
Definition: xmlstorage.h:181
$if(_WDMDDK_) typedef struct _RTL_BITMAP
Definition: rtltypes.h:5
struct _RTL_QUERY_REGISTRY_TABLE RTL_QUERY_REGISTRY_TABLE
PPREFIX_TABLE_ENTRY NextPrefixTree
Definition: rtltypes.h:618
ULONG NumberGenericTableElements
Definition: rtltypes.h:476
PRTL_SPLAY_LINKS TableRoot
Definition: rtltypes.h:472
PRTL_GENERIC_FREE_ROUTINE FreeRoutine
Definition: rtltypes.h:479
#define NTSTATUS
Definition: precomp.h:20
NTSTATUS ExceptionCode
Definition: rtltypes.h:172
USHORT wServicePackMajor
Definition: rtltypes.h:261
WCHAR szCSDVersion[128]
Definition: rtltypes.h:274
#define VOID
Definition: acefi.h:82
ULONG SizeOfBitMap
Definition: typedefs.h:90
DWORD WINAPI RTL_RUN_ONCE_INIT_FN(PRTL_RUN_ONCE, PVOID, PVOID *)
Definition: winnt_old.h:2607
ULONG dwMinorVersion
Definition: rtltypes.h:239
_IRQL_requires_same_ _In_ PVOID FirstStruct
Definition: rtltypes.h:383
_In_ ULONG _In_reads_bytes_opt_(ValueLength) PVOID ValueData
struct _RTL_DYNAMIC_HASH_TABLE_CONTEXT RTL_DYNAMIC_HASH_TABLE_CONTEXT
PRTL_AVL_COMPARE_ROUTINE CompareRoutine
Definition: rtltypes.h:429
RTL_BITMAP
Definition: rtltypes.h:35
Definition: typedefs.h:119
struct _EXCEPTION_RECORD32 * PEXCEPTION_RECORD32
SIZE_T DeCommitFreeBlockThreshold
Definition: rtltypes.h:585
USHORT CompressionFormatAndEngine
Definition: rtltypes.h:641
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
PRTL_AVL_FREE_ROUTINE FreeRoutine
Definition: rtltypes.h:431
CHAR szCSDVersion[128]
Definition: rtltypes.h:260
RTL_AVL_FREE_ROUTINE * PRTL_AVL_FREE_ROUTINE
Definition: rtltypes.h:402
PUNICODE_PREFIX_TABLE_ENTRY LastNextEntry
Definition: rtltypes.h:634
struct _OSVERSIONINFOEXW OSVERSIONINFOEXW
Definition: rtltypes.h:607
ULONG StartingIndex
Definition: typedefs.h:96
ULONG dwPlatformId
Definition: rtltypes.h:250
#define _ANONYMOUS_STRUCT
Definition: ntbasedef.h:56
struct _RTL_DYNAMIC_HASH_TABLE_ENUMERATOR RTL_DYNAMIC_HASH_TABLE_ENUMERATOR
_IRQL_requires_same_ _In_ __drv_freesMem(Mem) _Post_invalid_ PVOID Buffer)
Definition: exfuncs.h:1523
union _SLIST_HEADER * PSLIST_HEADER
struct _RTL_DYNAMIC_HASH_TABLE_ENUMERATOR * PRTL_DYNAMIC_HASH_TABLE_ENUMERATOR
struct _EXCEPTION_RECORD * ExceptionRecord
Definition: compat.h:210
struct _RTL_GENERIC_TABLE RTL_GENERIC_TABLE
typedef BOOLEAN(NTAPI *PRTL_CONFLICT_RANGE_CALLBACK)(PVOID Context
NTKERNELAPI const PRTL_FREE_STRING_ROUTINE RtlFreeStringRoutine
struct _RTL_SPLAY_LINKS RTL_SPLAY_LINKS
#define _In_
Definition: no_sal2.h:158
ULONG_PTR SIZE_T
Definition: typedefs.h:80
#define EXCEPTION_MAXIMUM_PARAMETERS
Definition: rtltypes.h:168
struct _PREFIX_TABLE * PPREFIX_TABLE
ULONG NumberParameters
Definition: rtltypes.h:176
_In_ ULONG ValueType
Definition: rtltypes.h:48
#define _IRQL_requires_max_(irql)
Definition: driverspecs.h:213
RTL_SPLAY_LINKS Links
Definition: rtltypes.h:626
struct _OSVERSIONINFOEXA * LPOSVERSIONINFOEXA
struct _OSVERSIONINFOA OSVERSIONINFOA
PRTL_AVL_ALLOCATE_ROUTINE AllocateRoutine
Definition: rtltypes.h:430
unsigned short USHORT
Definition: pedump.c:61
struct _OSVERSIONINFOA * POSVERSIONINFOA
struct _OSVERSIONINFOW * PRTL_OSVERSIONINFOW
#define _In_z_
Definition: no_sal2.h:164
* PRTL_RUN_ONCE
Definition: rtltypes.h:350
struct _RTL_AVL_TABLE * PRTL_AVL_TABLE
ULONG dwPlatformId
Definition: rtltypes.h:241
_IRQL_requires_same_ _In_ PVOID _In_ PVOID MatchData
Definition: rtltypes.h:409
struct _TIME_FIELDS * PTIME_FIELDS
USHORT wServicePackMajor
Definition: rtltypes.h:275
struct _EXCEPTION_RECORD64 * PEXCEPTION_RECORD64
struct _OSVERSIONINFOEXW * PRTL_OSVERSIONINFOEXW
union _SLIST_HEADER SLIST_HEADER
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS _Inout_ PLARGE_INTEGER NumberOfBytes
Definition: iotypes.h:1018
unsigned int * PULONG
Definition: retypes.h:1
struct _EXCEPTION_RECORD32 EXCEPTION_RECORD32
SLIST_ENTRY * PSLIST_ENTRY32
Definition: rtltypes.h:136
_TABLE_SEARCH_RESULT
Definition: rtltypes.h:362
enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS
struct _OSVERSIONINFOEXA * POSVERSIONINFOEXA
BOOLEAN(* PFN_RTL_IS_SERVICE_PACK_VERSION_INSTALLED)(_In_ ULONG Version)
Definition: rtltypes.h:233
PLIST_ENTRY OrderedPointer
Definition: rtltypes.h:474
LPOSVERSIONINFOA LPOSVERSIONINFO
Definition: rtltypes.h:295
OSVERSIONINFOEXA OSVERSIONINFOEX
Definition: rtltypes.h:290
ULONG dwMinorVersion
Definition: rtltypes.h:248
_IRQL_requires_same_ _In_ PVOID UserData
Definition: rtltypes.h:409
ULONG dwPlatformId
Definition: rtltypes.h:259
PRTL_BALANCED_LINKS RestartKey
Definition: rtltypes.h:427
unsigned int ULONG
Definition: retypes.h:1
PUNICODE_PREFIX_TABLE_ENTRY NextPrefixTree
Definition: rtltypes.h:633
struct _UNICODE_PREFIX_TABLE_ENTRY UNICODE_PREFIX_TABLE_ENTRY
_In_ ULONG _In_ ULONG _In_opt_ PVOID _In_opt_ PVOID EntryContext
Definition: rtltypes.h:50
UCHAR wProductType
Definition: rtltypes.h:264
RTL_SPLAY_LINKS Links
Definition: rtltypes.h:611
USHORT Depth
Definition: rtltypes.h:142
LIST_ENTRY InsertOrderList
Definition: rtltypes.h:473
VOID(NTAPI * PRTL_FREE_STRING_ROUTINE)(_In_ __drv_freesMem(Mem) _Post_invalid_ PVOID Buffer)
Definition: rtltypes.h:563
struct _RTL_DYNAMIC_HASH_TABLE_CONTEXT * PRTL_DYNAMIC_HASH_TABLE_CONTEXT
PEXCEPTION_RECORD ExceptionRecord
Definition: rtltypes.h:200
SIZE_T MaximumAllocationSize
Definition: rtltypes.h:587
RTL_AVL_ALLOCATE_ROUTINE * PRTL_AVL_ALLOCATE_ROUTINE
Definition: rtltypes.h:394
LIST_ENTRY Linkage
Definition: rtltypes.h:510
ULONG WhichOrderedElement
Definition: rtltypes.h:475
struct _UNICODE_PREFIX_TABLE_ENTRY * CaseMatch
Definition: rtltypes.h:625
CHAR szCSDVersion[128]
Definition: rtltypes.h:242
CSHORT NodeTypeCode
Definition: rtltypes.h:608
struct _RTL_SPLAY_LINKS * PRTL_SPLAY_LINKS
POSVERSIONINFOEXA POSVERSIONINFOEX
Definition: rtltypes.h:291
#define DUMMYSTRUCTNAME
Definition: ntbasedef.h:58
_In_ ULONG _In_ ULONG ValueLength
Definition: rtltypes.h:50
_IRQL_requires_same_ _In_ CLONG ByteSize
Definition: rtltypes.h:393
short CSHORT
Definition: umtypes.h:127
UCHAR CompressionUnitShift
Definition: rtltypes.h:642
ULONG64 ExceptionRecord
Definition: rtltypes.h:192
ULONG dwBuildNumber
Definition: rtltypes.h:258
#define _NTDDK_
USHORT wServicePackMinor
Definition: rtltypes.h:276
struct _EXCEPTION_RECORD EXCEPTION_RECORD
CSHORT NameLength
Definition: rtltypes.h:617
#define _Inout_opt_
Definition: no_sal2.h:216
LPOSVERSIONINFOEXA LPOSVERSIONINFOEX
Definition: rtltypes.h:292
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
Definition: wdfregistry.h:271