ReactOS 0.4.17-dev-650-gd0e71de
rtltypes.h
Go to the documentation of this file.
1/*++ NDK Version: 0098
2
3Copyright (c) Alex Ionescu. All rights reserved.
4
5Header Name:
6
7 rtltypes.h
8
9Abstract:
10
11 Type definitions for the Run-Time Library
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17--*/
18
19#ifndef _RTLTYPES_H
20#define _RTLTYPES_H
21
22//
23// Dependencies
24//
25#include <umtypes.h>
26#include <mmtypes.h>
27#include <ldrtypes.h>
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33//
34// Maximum Atom Length
35//
36#define RTL_MAXIMUM_ATOM_LENGTH 255
37
38//
39// Process Parameters Flags
40//
41#define RTL_USER_PROCESS_PARAMETERS_NORMALIZED 0x01
42#define RTL_USER_PROCESS_PARAMETERS_PROFILE_USER 0x02
43#define RTL_USER_PROCESS_PARAMETERS_PROFILE_KERNEL 0x04
44#define RTL_USER_PROCESS_PARAMETERS_PROFILE_SERVER 0x08
45#define RTL_USER_PROCESS_PARAMETERS_UNKNOWN 0x10
46#define RTL_USER_PROCESS_PARAMETERS_RESERVE_1MB 0x20
47#define RTL_USER_PROCESS_PARAMETERS_RESERVE_16MB 0x40
48#define RTL_USER_PROCESS_PARAMETERS_CASE_SENSITIVE 0x80
49#define RTL_USER_PROCESS_PARAMETERS_DISABLE_HEAP_CHECKS 0x100
50#define RTL_USER_PROCESS_PARAMETERS_PROCESS_OR_1 0x200
51#define RTL_USER_PROCESS_PARAMETERS_PROCESS_OR_2 0x400
52#define RTL_USER_PROCESS_PARAMETERS_PRIVATE_DLL_PATH 0x1000
53#define RTL_USER_PROCESS_PARAMETERS_LOCAL_DLL_PATH 0x2000
54#define RTL_USER_PROCESS_PARAMETERS_IMAGE_KEY_MISSING 0x4000
55#define RTL_USER_PROCESS_PARAMETERS_NX 0x20000
56
57#define RTL_MAX_DRIVE_LETTERS 32
58#define RTL_DRIVE_LETTER_VALID (USHORT)0x0001
59
60//
61// End of Exception List
62//
63#define EXCEPTION_CHAIN_END ((PEXCEPTION_REGISTRATION_RECORD)-1)
64
65//
66// Thread Error Mode Flags
67//
68/* Also defined in psdk/winbase.h */
69#define SEM_FAILCRITICALERRORS 0x0001
70#define SEM_NOGPFAULTERRORBOX 0x0002
71#define SEM_NOALIGNMENTFAULTEXCEPT 0x0004
72#define SEM_NOOPENFILEERRORBOX 0x8000
73
74#define RTL_SEM_FAILCRITICALERRORS (SEM_FAILCRITICALERRORS << 4)
75#define RTL_SEM_NOGPFAULTERRORBOX (SEM_NOGPFAULTERRORBOX << 4)
76#define RTL_SEM_NOALIGNMENTFAULTEXCEPT (SEM_NOALIGNMENTFAULTEXCEPT << 4)
77
78//
79// Range and Range List Flags
80//
81#define RTL_RANGE_LIST_ADD_IF_CONFLICT 0x00000001
82#define RTL_RANGE_LIST_ADD_SHARED 0x00000002
83
84//
85// Flags for RtlIsRangeAvailable
86//
87// Both are viewable through PCI.sys's behaviors on ROM space and Shared IRQs.
88//
89#define RTL_RANGE_LIST_SHARED_OK 0x00000001
90#define RTL_RANGE_LIST_NULL_CONFLICT_OK 0x00000002
91
92#define RTL_RANGE_SHARED 0x01
93#define RTL_RANGE_CONFLICT 0x02
94
95//
96// Flags in RTL_ACTIVATION_CONTEXT_STACK_FRAME (from Checked NTDLL)
97//
98#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_RELEASE_ON_DEACTIVATION 0x01
99#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_NO_DEACTIVATE 0x02
100#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_ON_FREE_LIST 0x04
101#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_HEAP_ALLOCATED 0x08
102#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_NOT_REALLY_ACTIVATED 0x10
103#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_ACTIVATED 0x20
104#define RTL_ACTIVATION_CONTEXT_STACK_FRAME_FLAG_DEACTIVATED 0x40
105
106//
107// Activation Context Frame Flags (from Checked NTDLL)
108//
109#define RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_FORMAT_WHISTLER 0x01
110
111//
112// RtlActivateActivationContextEx Flags (from Checked NTDLL)
113//
114#define RTL_ACTIVATE_ACTIVATION_CONTEXT_EX_FLAG_RELEASE_ON_STACK_DEALLOCATION 0x01
115
116//
117// RtlDeactivateActivationContext Flags (based on Win32 flag and name of above)
118//
119#define RTL_DEACTIVATE_ACTIVATION_CONTEXT_FLAG_FORCE_EARLY_DEACTIVATION 0x01
120
121//
122// RtlQueryActivationContext Flags (based on Win32 flag and name of above)
123//
124#define RTL_QUERY_ACTIVATION_CONTEXT_FLAG_USE_ACTIVE_ACTIVATION_CONTEXT 0x01
125#define RTL_QUERY_ACTIVATION_CONTEXT_FLAG_IS_HMODULE 0x02
126#define RTL_QUERY_ACTIVATION_CONTEXT_FLAG_IS_ADDRESS 0x04
127#define RTL_QUERY_ACTIVATION_CONTEXT_FLAG_NO_ADDREF 0x80000000
128
129//
130// Public Heap Flags
131//
132#if !defined(NTOS_MODE_USER) && !defined(_NTIFS_)
133#define HEAP_NO_SERIALIZE 0x00000001
134#define HEAP_GROWABLE 0x00000002
135#define HEAP_GENERATE_EXCEPTIONS 0x00000004
136#define HEAP_ZERO_MEMORY 0x00000008
137#define HEAP_REALLOC_IN_PLACE_ONLY 0x00000010
138#define HEAP_TAIL_CHECKING_ENABLED 0x00000020
139#define HEAP_FREE_CHECKING_ENABLED 0x00000040
140#define HEAP_DISABLE_COALESCE_ON_FREE 0x00000080
141#define HEAP_CREATE_ALIGN_16 0x00010000
142#define HEAP_CREATE_ENABLE_TRACING 0x00020000
143#define HEAP_CREATE_ENABLE_EXECUTE 0x00040000
144#endif
145
146//
147// User-Defined Heap Flags and Classes
148//
149#define HEAP_SETTABLE_USER_VALUE 0x00000100
150#define HEAP_SETTABLE_USER_FLAG1 0x00000200
151#define HEAP_SETTABLE_USER_FLAG2 0x00000400
152#define HEAP_SETTABLE_USER_FLAG3 0x00000800
153#define HEAP_SETTABLE_USER_FLAGS 0x00000E00
154#define HEAP_CLASS_0 0x00000000
155#define HEAP_CLASS_1 0x00001000
156#define HEAP_CLASS_2 0x00002000
157#define HEAP_CLASS_3 0x00003000
158#define HEAP_CLASS_4 0x00004000
159#define HEAP_CLASS_5 0x00005000
160#define HEAP_CLASS_6 0x00006000
161#define HEAP_CLASS_7 0x00007000
162#define HEAP_CLASS_8 0x00008000
163#define HEAP_CLASS_MASK 0x0000F000
164
165//
166// Internal HEAP Structure Flags
167//
168#define HEAP_FLAG_PAGE_ALLOCS 0x01000000
169#define HEAP_PROTECTION_ENABLED 0x02000000
170#define HEAP_BREAK_WHEN_OUT_OF_VM 0x04000000
171#define HEAP_NO_ALIGNMENT 0x08000000
172#define HEAP_CAPTURE_STACK_BACKTRACES 0x08000000
173#define HEAP_SKIP_VALIDATION_CHECKS 0x10000000
174#define HEAP_VALIDATE_ALL_ENABLED 0x20000000
175#define HEAP_VALIDATE_PARAMETERS_ENABLED 0x40000000
176#define HEAP_LOCK_USER_ALLOCATED 0x80000000
177
178//
179// Heap Validation Flags
180//
181#define HEAP_CREATE_VALID_MASK \
182 (HEAP_NO_SERIALIZE | \
183 HEAP_GROWABLE | \
184 HEAP_GENERATE_EXCEPTIONS | \
185 HEAP_ZERO_MEMORY | \
186 HEAP_REALLOC_IN_PLACE_ONLY | \
187 HEAP_TAIL_CHECKING_ENABLED | \
188 HEAP_FREE_CHECKING_ENABLED | \
189 HEAP_DISABLE_COALESCE_ON_FREE | \
190 HEAP_CLASS_MASK | \
191 HEAP_CREATE_ALIGN_16 | \
192 HEAP_CREATE_ENABLE_TRACING | \
193 HEAP_CREATE_ENABLE_EXECUTE)
194#ifdef C_ASSERT
195C_ASSERT(HEAP_CREATE_VALID_MASK == 0x0007F0FF);
196#endif
197
198//
199// Native image architecture
200//
201#if defined(_M_IX86)
202#define IMAGE_FILE_MACHINE_NATIVE IMAGE_FILE_MACHINE_I386
203#elif defined(_M_ARM)
204#define IMAGE_FILE_MACHINE_NATIVE IMAGE_FILE_MACHINE_ARM
205#elif defined(_M_AMD64)
206#define IMAGE_FILE_MACHINE_NATIVE IMAGE_FILE_MACHINE_AMD64
207#elif defined(_M_ARM64)
208#define IMAGE_FILE_MACHINE_NATIVE IMAGE_FILE_MACHINE_ARM64
209#else
210#error Define these please!
211#endif
212
213//
214// Registry Keys
215//
216#define RTL_REGISTRY_ABSOLUTE 0
217#define RTL_REGISTRY_SERVICES 1
218#define RTL_REGISTRY_CONTROL 2
219#define RTL_REGISTRY_WINDOWS_NT 3
220#define RTL_REGISTRY_DEVICEMAP 4
221#define RTL_REGISTRY_USER 5
222#define RTL_REGISTRY_MAXIMUM 6
223#define RTL_REGISTRY_HANDLE 0x40000000
224#define RTL_REGISTRY_OPTIONAL 0x80000000
225#define RTL_QUERY_REGISTRY_SUBKEY 0x00000001
226#define RTL_QUERY_REGISTRY_TOPKEY 0x00000002
227#define RTL_QUERY_REGISTRY_REQUIRED 0x00000004
228#define RTL_QUERY_REGISTRY_NOVALUE 0x00000008
229#define RTL_QUERY_REGISTRY_NOEXPAND 0x00000010
230#define RTL_QUERY_REGISTRY_DIRECT 0x00000020
231#define RTL_QUERY_REGISTRY_DELETE 0x00000040
232
233//
234// Versioning
235//
236#define VER_MINORVERSION 0x0000001
237#define VER_MAJORVERSION 0x0000002
238#define VER_BUILDNUMBER 0x0000004
239#define VER_PLATFORMID 0x0000008
240#define VER_SERVICEPACKMINOR 0x0000010
241#define VER_SERVICEPACKMAJOR 0x0000020
242#define VER_SUITENAME 0x0000040
243#define VER_PRODUCT_TYPE 0x0000080
244#define VER_PLATFORM_WIN32s 0
245#define VER_PLATFORM_WIN32_WINDOWS 1
246#define VER_PLATFORM_WIN32_NT 2
247#define VER_EQUAL 1
248#define VER_GREATER 2
249#define VER_GREATER_EQUAL 3
250#define VER_LESS 4
251#define VER_LESS_EQUAL 5
252#define VER_AND 6
253#define VER_OR 7
254#define VER_CONDITION_MASK 7
255#define VER_NUM_BITS_PER_CONDITION_MASK 3
256
257//
258// Timezone IDs
259//
260#define TIME_ZONE_ID_UNKNOWN 0
261#define TIME_ZONE_ID_STANDARD 1
262#define TIME_ZONE_ID_DAYLIGHT 2
263
264//
265// Maximum Path Length
266//
267#define MAX_PATH 260
268
269//
270// RTL Lock Type (Critical Section or Resource)
271//
272#define RTL_CRITSECT_TYPE 0
273#define RTL_RESOURCE_TYPE 1
274
275//
276// RtlAcquirePrivileges Flags
277//
278#define RTL_ACQUIRE_PRIVILEGE_IMPERSONATE 1
279#define RTL_ACQUIRE_PRIVILEGE_PROCESS 2
280
281#ifdef NTOS_MODE_USER
282
283//
284// String Hash Algorithms
285//
286#define HASH_STRING_ALGORITHM_DEFAULT 0
287#define HASH_STRING_ALGORITHM_X65599 1
288#define HASH_STRING_ALGORITHM_INVALID 0xffffffff
289
290//
291// RtlDuplicateString Flags
292//
293#define RTL_DUPLICATE_UNICODE_STRING_NULL_TERMINATE 1
294#define RTL_DUPLICATE_UNICODE_STRING_ALLOCATE_NULL_STRING 2
295
296//
297// RtlFindCharInUnicodeString Flags
298//
299#define RTL_FIND_CHAR_IN_UNICODE_STRING_START_AT_END 1
300#define RTL_FIND_CHAR_IN_UNICODE_STRING_COMPLEMENT_CHAR_SET 2
301#define RTL_FIND_CHAR_IN_UNICODE_STRING_CASE_INSENSITIVE 4
302
303//
304// RtlDosApplyFileIsolationRedirection_Ustr Flags
305//
306#define RTL_DOS_APPLY_FILE_REDIRECTION_USTR_FLAG_RESPECT_DOT_LOCAL 0x01
307
308//
309// Codepages
310//
311#define NLS_MB_CODE_PAGE_TAG NlsMbCodePageTag
312#define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
313#define NLS_OEM_LEAD_BYTE_INFO NlsOemLeadByteInfo
314
315//
316// Activation Contexts
317//
318#define INVALID_ACTIVATION_CONTEXT ((PVOID)(LONG_PTR)-1)
319
320//
321// C++ CONST casting
322//
323#if defined(__cplusplus)
324#define RTL_CONST_CAST(type) const_cast<type>
325#else
326#define RTL_CONST_CAST(type) (type)
327#endif
328
329//
330// Constant String Macro
331//
332#define RTL_CONSTANT_STRING(__SOURCE_STRING__) \
333{ \
334 sizeof(__SOURCE_STRING__) - sizeof((__SOURCE_STRING__)[0]), \
335 sizeof(__SOURCE_STRING__), \
336 (__SOURCE_STRING__) \
337}
338
339//
340// Constant Object Attributes Macro
341//
342#define RTL_CONSTANT_OBJECT_ATTRIBUTES(n, a) \
343{ \
344 sizeof(OBJECT_ATTRIBUTES), \
345 NULL, \
346 RTL_CONST_CAST(PUNICODE_STRING)(n), \
347 a, \
348 NULL, \
349 NULL \
350}
351
352#define RTL_INIT_OBJECT_ATTRIBUTES(n, a) \
353 RTL_CONSTANT_OBJECT_ATTRIBUTES(n, a)
354
355#endif /* NTOS_MODE_USER */
356
357//
358// RtlImageNtHeaderEx Flags
359//
360#define RTL_IMAGE_NT_HEADER_EX_FLAG_NO_RANGE_CHECK 0x00000001
361
362
363#define MAXIMUM_LEADBYTES 12
364
365//
366// RTL Debug Queries
367//
368#define RTL_DEBUG_QUERY_MODULES 0x01
369#define RTL_DEBUG_QUERY_BACKTRACES 0x02
370#define RTL_DEBUG_QUERY_HEAPS 0x04
371#define RTL_DEBUG_QUERY_HEAP_TAGS 0x08
372#define RTL_DEBUG_QUERY_HEAP_BLOCKS 0x10
373#define RTL_DEBUG_QUERY_LOCKS 0x20
374
375//
376// RTL Handle Flags
377//
378#define RTL_HANDLE_VALID 0x1
379
380//
381// RTL Atom Flags
382//
383#define RTL_ATOM_IS_PINNED 0x1
384
385//
386// Critical section lock bits
387//
388#define CS_LOCK_BIT 0x1
389#define CS_LOCK_BIT_V 0x0
390#define CS_LOCK_WAITER_WOKEN 0x2
391#define CS_LOCK_WAITER_INC 0x4
392
393//
394// Codepage Tags
395//
396#ifdef NTOS_MODE_USER
399
400//
401// Constant String Macro
402//
403#define RTL_CONSTANT_STRING(__SOURCE_STRING__) \
404{ \
405 sizeof(__SOURCE_STRING__) - sizeof((__SOURCE_STRING__)[0]), \
406 sizeof(__SOURCE_STRING__), \
407 (__SOURCE_STRING__) \
408}
409
410#endif /* NTOS_MODE_USER */
411
412//
413// Constant Large Integer Macro
414//
415#ifdef NONAMELESSUNION
416C_ASSERT(FIELD_OFFSET(LARGE_INTEGER, u.LowPart) == 0);
417#else
419#endif
420#define RTL_CONSTANT_LARGE_INTEGER(quad_part) { { (quad_part), (quad_part)>>32 } }
421#define RTL_MAKE_LARGE_INTEGER(low_part, high_part) { { (low_part), (high_part) } }
422
423//
424// Boot Status Data Field Types
425//
427{
446
447#ifdef NTOS_MODE_USER
448//
449// Table and Compare result types
450//
451typedef enum _TABLE_SEARCH_RESULT
452{
453 TableEmptyTree,
454 TableFoundNode,
455 TableInsertAsLeft,
456 TableInsertAsRight
458
460{
465
466#endif /* NTOS_MODE_USER */
467
468//
469// RTL Path Types
470//
471typedef enum _RTL_PATH_TYPE
472{
482
483#ifndef NTOS_MODE_USER
484
485//
486// Heap Information Class
487//
489{
493
494//
495// Callback function for RTL Timers or Registered Waits
496//
497typedef VOID
499 PVOID pvContext,
500 BOOLEAN fTimerOrWaitFired
501);
502
503//
504// Handler during Vectored RTL Exceptions
505//
506typedef LONG
508 PEXCEPTION_POINTERS ExceptionPointers
509);
510
511//
512// Worker Thread Callback for Rtl
513//
514typedef VOID
517);
518
519#else /* !NTOS_MODE_USER */
520
521//
522// RTL Library Allocation/Free Routines
523//
524typedef PVOID
525(NTAPI *PRTL_ALLOCATE_STRING_ROUTINE)(
527);
528
529typedef PVOID
530(NTAPI *PRTL_REALLOCATE_STRING_ROUTINE)(
533);
534
535typedef
536VOID
539);
540
541extern const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine;
543extern const PRTL_REALLOCATE_STRING_ROUTINE RtlReallocateStringRoutine;
544
545#endif /* NTOS_MODE_USER */
546
547//
548// Unhandled Exception Filter
549//
550typedef ULONG
551(NTAPI RTLP_UNHANDLED_EXCEPTION_FILTER)(
552 _In_ struct _EXCEPTION_POINTERS *ExceptionInfo
553);
554typedef RTLP_UNHANDLED_EXCEPTION_FILTER *PRTLP_UNHANDLED_EXCEPTION_FILTER;
555
556//
557// Callback for RTL Heap Enumeration
558//
559typedef NTSTATUS
561 _In_ PVOID HeapHandle,
562 _In_ PVOID UserParam
563);
564
565//
566// Thread and Process Start Routines for RtlCreateUserThread/Process
567//
570);
571
572typedef VOID
574 PTHREAD_START_ROUTINE StartAddress,
576);
577
578//
579// Worker Start/Exit Function
580//
581typedef NTSTATUS
585 _Out_ PHANDLE ThreadHandle
586);
587
588typedef NTSTATUS
591);
592
593//
594// Declare empty structure definitions so that they may be referenced by
595// routines before they are defined
596//
597struct _RTL_AVL_TABLE;
598struct _RTL_GENERIC_TABLE;
599struct _RTL_RANGE;
600
601//
602// Routines and callbacks for the RTL AVL/Generic Table package
603//
604#ifdef NTOS_MODE_USER
605typedef NTSTATUS
606(NTAPI RTL_AVL_MATCH_FUNCTION)(
607 struct _RTL_AVL_TABLE *Table,
610);
611typedef RTL_AVL_MATCH_FUNCTION *PRTL_AVL_MATCH_FUNCTION;
612
614(NTAPI RTL_AVL_COMPARE_ROUTINE) (
615 struct _RTL_AVL_TABLE *Table,
618);
619typedef RTL_AVL_COMPARE_ROUTINE *PRTL_AVL_COMPARE_ROUTINE;
620
622(NTAPI RTL_GENERIC_COMPARE_ROUTINE) (
626);
627typedef RTL_GENERIC_COMPARE_ROUTINE *PRTL_GENERIC_COMPARE_ROUTINE;
628
629typedef PVOID
630(NTAPI RTL_GENERIC_ALLOCATE_ROUTINE) (
633);
634typedef RTL_GENERIC_ALLOCATE_ROUTINE *PRTL_GENERIC_ALLOCATE_ROUTINE;
635
636typedef PVOID
637(NTAPI RTL_AVL_ALLOCATE_ROUTINE) (
638 struct _RTL_AVL_TABLE *Table,
640);
641typedef RTL_AVL_ALLOCATE_ROUTINE *PRTL_AVL_ALLOCATE_ROUTINE;
642
643typedef VOID
644(NTAPI RTL_GENERIC_FREE_ROUTINE) (
647);
648typedef RTL_GENERIC_FREE_ROUTINE *PRTL_GENERIC_FREE_ROUTINE;
649
650typedef VOID
651(NTAPI RTL_AVL_FREE_ROUTINE) (
652 struct _RTL_AVL_TABLE *Table,
654);
655typedef RTL_AVL_FREE_ROUTINE *PRTL_AVL_FREE_ROUTINE;
656
657#ifdef RTL_USE_AVL_TABLES
658#undef RTL_GENERIC_COMPARE_ROUTINE
659#undef PRTL_GENERIC_COMPARE_ROUTINE
660#undef RTL_GENERIC_ALLOCATE_ROUTINE
661#undef PRTL_GENERIC_ALLOCATE_ROUTINE
662#undef RTL_GENERIC_FREE_ROUTINE
663#undef PRTL_GENERIC_FREE_ROUTINE
664
665#define RTL_GENERIC_COMPARE_ROUTINE RTL_AVL_COMPARE_ROUTINE
666#define PRTL_GENERIC_COMPARE_ROUTINE PRTL_AVL_COMPARE_ROUTINE
667#define RTL_GENERIC_ALLOCATE_ROUTINE RTL_AVL_ALLOCATE_ROUTINE
668#define PRTL_GENERIC_ALLOCATE_ROUTINE PRTL_AVL_ALLOCATE_ROUTINE
669#define RTL_GENERIC_FREE_ROUTINE RTL_AVL_FREE_ROUTINE
670#define PRTL_GENERIC_FREE_ROUTINE PRTL_AVL_FREE_ROUTINE
671#endif /* RTL_USE_AVL_TABLES */
672
673#endif /* NTOS_MODE_USER */
674
675//
676// RTL Query Registry callback
677//
678#ifdef NTOS_MODE_USER
679typedef NTSTATUS
687);
688#endif
689
690//
691// RTL Secure Memory callbacks
692//
693#ifdef NTOS_MODE_USER
694typedef NTSTATUS
695(NTAPI *PRTL_SECURE_MEMORY_CACHE_CALLBACK)(
698);
699#endif
700
701//
702// RTL Range List callbacks
703//
704typedef BOOLEAN
707 struct _RTL_RANGE *Range
708);
709
710//
711// Custom Heap Commit Routine for RtlCreateHeap
712//
713#ifdef NTOS_MODE_USER
714typedef NTSTATUS
719);
720
721//
722// Parameters for RtlCreateHeap
723//
724typedef struct _RTL_HEAP_PARAMETERS
725{
736 SIZE_T Reserved[2];
738
739//
740// RTL Bitmap structures
741//
742typedef struct _RTL_BITMAP
743{
747
748typedef struct _RTL_BITMAP_RUN
749{
753
754//
755// RtlGenerateXxxName context
756//
757typedef struct _GENERATE_NAME_CONTEXT
758{
761 UCHAR NameLength;
762 WCHAR NameBuffer[8];
763 ULONG ExtensionLength;
767
768//
769// RTL Splay and Balanced Links structures
770//
771typedef struct _RTL_SPLAY_LINKS
772{
773 struct _RTL_SPLAY_LINKS *Parent;
777
778typedef struct _RTL_BALANCED_LINKS
779{
784 UCHAR Reserved[3];
786
787//
788// RTL Avl/Generic Tables
789//
790#ifndef RTL_USE_AVL_TABLES
791typedef struct _RTL_GENERIC_TABLE
792{
803#endif /* !RTL_USE_AVL_TABLES */
804
805typedef struct _RTL_AVL_TABLE
806{
819
820#ifdef RTL_USE_AVL_TABLES
821#undef RTL_GENERIC_TABLE
822#undef PRTL_GENERIC_TABLE
823
824#define RTL_GENERIC_TABLE RTL_AVL_TABLE
825#define PRTL_GENERIC_TABLE PRTL_AVL_TABLE
826#endif /* RTL_USE_AVL_TABLES */
827
828//
829// RTL Compression Buffer
830//
831typedef struct _COMPRESSED_DATA_INFO {
840
841//
842// RtlQueryRegistry Data
843//
844typedef struct _RTL_QUERY_REGISTRY_TABLE
845{
847 ULONG Flags;
848 PCWSTR Name;
854
855//
856// RTL Unicode Table Structures
857//
858typedef struct _UNICODE_PREFIX_TABLE_ENTRY
859{
867
868typedef struct _UNICODE_PREFIX_TABLE
869{
875
876//
877// Pfx* routines' table structures
878//
879typedef struct _PREFIX_TABLE_ENTRY
880{
887
888typedef struct _PREFIX_TABLE
889{
894
895//
896// Time Structure for RTL Time calls
897//
898typedef struct _TIME_FIELDS
899{
900 CSHORT Year;
902 CSHORT Day;
903 CSHORT Hour;
909
910//
911// Activation Context Frame
912//
914{
917 ULONG Flags;
919
920typedef struct _RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_BASIC
921{
922 SIZE_T Size;
925} RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_BASIC, *PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_BASIC;
926
927typedef struct _RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED
928{
929 SIZE_T Size;
932 PVOID Extra1;
933 PVOID Extra2;
934 PVOID Extra3;
935 PVOID Extra4;
936} RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED, *PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED;
937
938typedef RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME;
939typedef PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME;
940
941typedef struct _RTL_HEAP_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME
942{
945 PVOID ActivationStackBackTrace[8];
946} RTL_HEAP_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME, *PRTL_HEAP_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME;
947
948typedef struct _ACTIVATION_CONTEXT_DATA
949{
950 ULONG Magic;
951 ULONG HeaderSize;
952 ULONG FormatVersion;
953 ULONG TotalSize;
954 ULONG DefaultTocOffset;
955 ULONG ExtendedTocOffset;
956 ULONG AssemblyRosterOffset;
957 ULONG Flags;
958} ACTIVATION_CONTEXT_DATA, *PACTIVATION_CONTEXT_DATA;
959
960typedef struct _ACTIVATION_CONTEXT_STACK_FRAMELIST
961{
962 ULONG Magic;
963 ULONG FramesInUse;
964 LIST_ENTRY Links;
965 ULONG Flags;
966 ULONG NotFramesInUse;
967 RTL_HEAP_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME Frames[32];
968} ACTIVATION_CONTEXT_STACK_FRAMELIST, *PACTIVATION_CONTEXT_STACK_FRAMELIST;
969
970#endif /* NTOS_MODE_USER */
971
972#if (NTDDI_VERSION >= NTDDI_WS03SP1)
974{
981#else
982typedef struct _ACTIVATION_CONTEXT_STACK
983{
984 ULONG Flags;
989#endif
990
991//
992// ACE Structure
993//
994typedef struct _ACE
995{
999
1000//
1001// Information Structures for RTL Debug Functions
1002//
1004{
1016
1018{
1022
1024{
1031
1033{
1038
1040{
1047
1048typedef struct _RTL_HEAP_USAGE
1049{
1060
1062{
1068 union
1069 {
1070 struct
1071 {
1077 struct
1078 {
1084 };
1086
1087typedef struct _RTL_HEAP_ENTRY
1088{
1092 union
1093 {
1094 struct
1095 {
1099 struct
1100 {
1104 } u;
1106
1107typedef struct _RTL_HEAP_TAG
1108{
1116
1118{
1133
1135{
1139
1141{
1153
1155{
1159
1161{
1168
1170{
1177
1179{
1183 //
1184 // Option array continues below
1185 //
1187
1189{
1202 union
1203 {
1206 };
1218
1219//
1220// Fiber local storage data
1221//
1222#define RTL_FLS_MAXIMUM_AVAILABLE 128
1223typedef struct _RTL_FLS_DATA
1224{
1228
1229
1230//
1231// Unload Event Trace Structure for RtlGetUnloadEventTrace
1232//
1233#define RTL_UNLOAD_EVENT_TRACE_NUMBER 16
1234
1235typedef struct _RTL_UNLOAD_EVENT_TRACE
1236{
1242 WCHAR ImageName[32];
1244
1245//
1246// RTL Handle Structures
1247//
1249{
1250 union
1251 {
1254 };
1256
1257typedef struct _RTL_HANDLE_TABLE
1258{
1267
1268//
1269// RTL Boot Status Data Item
1270//
1271typedef struct _RTL_BSD_ITEM
1272{
1277
1278//
1279// Data Sub-Structures for "bootstat.dat" RTL Data File
1280//
1282{
1284 struct
1285 {
1300
1302{
1309
1311{
1316 struct
1317 {
1330
1331//
1332// Main Structure for "bootstat.dat" RTL Data File
1333//
1334typedef struct _RTL_BSD_DATA
1335{
1336 ULONG Version; // RtlBsdItemVersionNumber
1337 ULONG ProductType; // RtlBsdItemProductType
1338 BOOLEAN AabEnabled; // RtlBsdItemAabEnabled
1339 UCHAR AabTimeout; // RtlBsdItemAabTimeout
1340 BOOLEAN LastBootSucceeded; // RtlBsdItemBootGood
1341 BOOLEAN LastBootShutdown; // RtlBsdItemBootShutdown
1342 BOOLEAN SleepInProgress; // RtlBsdSleepInProgress
1344 UCHAR BootAttemptCount; // RtlBsdItemBootAttemptCount
1345 UCHAR LastBootCheckpoint; // RtlBsdItemBootCheckpoint
1346 UCHAR Checksum; // RtlBsdItemChecksum
1347 ULONG LastBootId; // RtlBsdItemBootId
1348 ULONG LastSuccessfulShutdownBootId; // RtlBsdItemShutdownBootId
1349 ULONG LastReportedAbnormalShutdownBootId; // RtlBsdItemReportedAbnormalShutdownBootId
1350 RTL_BSD_DATA_ERROR_INFO ErrorInfo; // RtlBsdItemErrorInfo
1353
1354#ifdef NTOS_MODE_USER
1355//
1356// Exception Record
1357//
1358typedef struct _EXCEPTION_REGISTRATION_RECORD
1359{
1363#endif /* NTOS_MODE_USER */
1364
1365//
1366// Current Directory Structures
1367//
1368typedef struct _CURDIR
1369{
1373
1374typedef struct _RTLP_CURDIR_REF
1375{
1379
1381{
1386
1388{
1394
1396{
1401
1402typedef struct _RTL_ACE_DATA
1403{
1410
1411//
1412// Private State structure for RtlAcquirePrivilege/RtlReleasePrivilege
1413//
1415{
1423
1424#ifndef NTOS_MODE_USER
1425
1426//
1427// RTL Critical Section Structures
1428//
1430{
1437 union
1438 {
1441 struct
1442 {
1446 };
1447 };
1449
1450#ifdef _WIN64
1451C_ASSERT(sizeof(RTL_CRITICAL_SECTION_DEBUG) == 0x30);
1452#else
1454#endif
1455
1457{
1465
1466#endif /* !NTOS_MODE_USER */
1467
1468//
1469// RTL Private Heap Structures
1470//
1471typedef struct _HEAP_LOCK
1472{
1473 union
1474 {
1476#ifndef NTOS_MODE_USER
1478#endif
1479 UCHAR Padding[0x68]; /* Max ERESOURCE size for x64 build. Needed because RTL is built only once */
1480 };
1482
1483//
1484// RTL Range List Structures
1485//
1486typedef struct _RTL_RANGE_LIST
1487{
1493
1494typedef struct _RTL_RANGE
1495{
1503
1505{
1511
1513{
1516 union
1517 {
1518 struct
1519 {
1523 struct
1524 {
1527 };
1534
1535//
1536// RTL Resource
1537//
1538#define RTL_RESOURCE_FLAG_LONG_TERM ((ULONG)0x00000001)
1539
1540typedef struct _RTL_RESOURCE
1541{
1552
1553//
1554// Structures for RtlCreateUserProcess
1555//
1556typedef struct _RTL_USER_PROCESS_PARAMETERS
1557{
1586#if (NTDDI_VERSION >= NTDDI_LONGHORN) || defined(__REACTOS__)
1588#endif
1589#if (NTDDI_VERSION >= NTDDI_WIN7)
1591#endif
1593
1595{
1602
1603#if (NTDDI_VERSION >= NTDDI_WIN7)
1604
1606{
1611
1613{
1615#if (NTDDI_VERSION < NTDDI_WIN8)
1616 UMSCTX_HAS_QUANTUM_REQ_BIT,
1617 UMSCTX_HAS_AFFINITY_REQ_BIT,
1618 UMSCTX_HAS_PRIORITY_REQ_BIT,
1619#endif
1626
1628
1629#define UMSCTX_SCHEDULED_THREAD_MASK (1 << UMSCTX_SCHEDULED_THREAD_BIT)
1630#define UMSCTX_SUSPENDED_MASK (1 << UMSCTX_SUSPENDED_BIT)
1631#define UMSCTX_VOLATILE_CONTEXT_MASK (1 << UMSCTX_VOLATILE_CONTEXT_BIT)
1632#define UMSCTX_TERMINATED_MASK (1 << UMSCTX_TERMINATED_BIT)
1633#define UMSCTX_DEBUG_ACTIVE_MASK (1 << UMSCTX_DEBUG_ACTIVE_BIT)
1634#define UMSCTX_RUNNING_ON_SELF_THREAD_MASK (1 << UMSCTX_RUNNING_ON_SELF_THREAD_BIT)
1635#define UMSCTX_DENY_RUNNING_ON_SELF_THREAD_MASK (1 << UMSCTX_DENY_RUNNING_ON_SELF_THREAD_BIT)
1636
1637//
1638// UMS Context
1639//
1640typedef struct DECLSPEC_ALIGN(16) _RTL_UMS_CONTEXT
1641{
1644 PVOID Teb;
1645 PVOID UserContext;
1646 union
1647 {
1648 struct
1649 {
1650 ULONG ScheduledThread : 1;
1651#if (NTDDI_VERSION < NTDDI_WIN8)
1652 ULONG HasQuantumReq : 1;
1653 ULONG HasAffinityReq : 1;
1654 ULONG HasPriorityReq : 1;
1655#endif
1656 ULONG Suspended : 1;
1657 ULONG VolatileContext : 1;
1658 ULONG Terminated : 1;
1659 ULONG DebugActive : 1;
1660 ULONG RunningOnSelfThread : 1;
1661 ULONG DenyRunningOnSelfThread : 1;
1662#if (NTDDI_VERSION < NTDDI_WIN8)
1663 ULONG ReservedFlags : 22;
1664#endif
1665 };
1666 LONG Flags;
1667 };
1668 union
1669 {
1670 struct
1671 {
1672#if (NTDDI_VERSION >= NTDDI_WIN8)
1673 ULONG64 KernelUpdateLock : 2;
1674#else
1675 ULONG64 KernelUpdateLock : 1;
1676 ULONG64 Reserved : 1;
1677#endif
1678 ULONG64 PrimaryClientID : 62;
1679 };
1680 ULONG64 ContextLock;
1681 };
1682#if (NTDDI_VERSION < NTDDI_WIN8)
1683 ULONG64 QuantumValue;
1684 GROUP_AFFINITY AffinityMask;
1685 LONG Priority;
1686#endif
1687 struct _RTL_UMS_CONTEXT* PrimaryUmsContext;
1688 ULONG SwitchCount;
1689 ULONG KernelYieldCount;
1690 ULONG MixedYieldCount;
1691 ULONG YieldCount;
1693#endif // #if (NTDDI_VERSION >= NTDDI_WIN7)
1694
1695//
1696// RTL Atom Table Structures
1697//
1699{
1708
1709typedef struct _RTL_ATOM_TABLE
1710{
1712 union
1713 {
1714#ifdef NTOS_MODE_USER
1716#else
1718#endif
1719 };
1720 union
1721 {
1722#ifdef NTOS_MODE_USER
1723 RTL_HANDLE_TABLE RtlHandleTable;
1724#else
1726#endif
1727 };
1731
1732//
1733// Timezone Information
1734//
1736{
1745
1746//
1747// Hotpatch Header
1748//
1749typedef struct _RTL_PATCH_HEADER
1750{
1756 struct _HOTPATCH_HEADER *HotpatchHeader;
1763
1764//
1765// Header for NLS Files
1766//
1767typedef struct _NLS_FILE_HEADER
1768{
1778
1779//
1780// Stack Traces
1781//
1783{
1790
1791
1793{
1794 union
1795 {
1797
1798 /* Padding for ERESOURCE */
1799#ifdef _WIN64
1800 UCHAR Padding[0x68];
1801#else
1803#endif
1805
1807
1811
1814
1818
1822
1823// Validate that our padding is big enough:
1824#ifndef NTOS_MODE_USER
1825#ifdef _WIN64
1826C_ASSERT(sizeof(ERESOURCE) <= 0x68);
1827#else
1828C_ASSERT(sizeof(ERESOURCE) <= 56);
1829#endif
1830#endif
1831
1832
1833//
1834// Trace Database
1835//
1836
1838
1839typedef struct _RTL_TRACE_BLOCK
1840{
1850
1852{
1860#ifdef NTOS_MODE_USER
1862#else
1863 union
1864 {
1867 } u;
1868#endif
1876
1878{
1887
1889{
1894
1895//
1896// Auto-Managed Rtl* String Buffer
1897//
1898typedef struct _RTL_BUFFER
1899{
1907
1909{
1914
1915#ifndef NTOS_MODE_USER
1916
1917#ifndef MAKEINTRESOURCE
1918#define MAKEINTRESOURCE(i) ((ULONG_PTR)(USHORT)(i))
1919#endif
1920
1921/* Predefined Resource Types */
1922#ifndef RT_STRING
1923#define RT_STRING MAKEINTRESOURCE(6)
1924#endif
1925#ifndef RT_MESSAGETABLE
1926#define RT_MESSAGETABLE MAKEINTRESOURCE(11)
1927#endif
1928
1929//
1930// Message Resource Flag
1931//
1932#define MESSAGE_RESOURCE_UNICODE 0x0001
1933
1934//
1935// Message Resource Entry, Block and Data
1936//
1938{
1943
1945{
1950
1952{
1956
1957#ifdef _M_AMD64
1958
1959typedef struct _KNONVOLATILE_CONTEXT_POINTERS {
1960 union {
1961 PM128A FloatingContext[16];
1962 struct {
1963 PM128A Xmm0;
1964 PM128A Xmm1;
1965 PM128A Xmm2;
1966 PM128A Xmm3;
1967 PM128A Xmm4;
1968 PM128A Xmm5;
1969 PM128A Xmm6;
1970 PM128A Xmm7;
1971 PM128A Xmm8;
1972 PM128A Xmm9;
1973 PM128A Xmm10;
1974 PM128A Xmm11;
1975 PM128A Xmm12;
1976 PM128A Xmm13;
1977 PM128A Xmm14;
1978 PM128A Xmm15;
1981
1982 union {
1983 PULONG64 IntegerContext[16];
1984 struct {
1985 PULONG64 Rax;
1986 PULONG64 Rcx;
1987 PULONG64 Rdx;
1988 PULONG64 Rbx;
1989 PULONG64 Rsp;
1990 PULONG64 Rbp;
1991 PULONG64 Rsi;
1992 PULONG64 Rdi;
1993 PULONG64 R8;
1994 PULONG64 R9;
1995 PULONG64 R10;
1996 PULONG64 R11;
1997 PULONG64 R12;
1998 PULONG64 R13;
1999 PULONG64 R14;
2000 PULONG64 R15;
2003} KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
2004
2005#define UNW_FLAG_NHANDLER 0x0
2006#define UNW_FLAG_EHANDLER 0x1
2007#define UNW_FLAG_UHANDLER 0x2
2008#define UNW_FLAG_CHAININFO 0x4
2009#define UNW_FLAG_NO_EPILOGUE 0x80000000UL
2010
2011#define RUNTIME_FUNCTION_INDIRECT 0x1
2012
2013typedef struct _RUNTIME_FUNCTION {
2014 ULONG BeginAddress;
2015 ULONG EndAddress;
2016 ULONG UnwindData;
2017} RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
2018
2019#define UNWIND_HISTORY_TABLE_SIZE 12
2020
2021typedef struct _UNWIND_HISTORY_TABLE_ENTRY
2022{
2026
2027typedef struct _UNWIND_HISTORY_TABLE
2028{
2029 ULONG Count;
2032 UCHAR Search;
2033 UCHAR Once;
2038
2039#endif /* _M_AMD64 */
2040
2041#endif /* !NTOS_MODE_USER */
2042
2043#ifdef NTOS_MODE_USER
2044
2045//
2046// Memory Stream
2047//
2048#ifndef CONST_VTBL
2049#ifdef CONST_VTABLE
2050#define CONST_VTBL const
2051#else
2052#define CONST_VTBL
2053#endif
2054#endif
2055
2056struct IStreamVtbl;
2057struct IStream;
2058struct tagSTATSTG;
2059
2060typedef struct _RTL_MEMORY_STREAM RTL_MEMORY_STREAM, *PRTL_MEMORY_STREAM;
2061
2062typedef VOID
2063(NTAPI *PRTL_MEMORY_STREAM_FINAL_RELEASE_ROUTINE)(
2064 _In_ PRTL_MEMORY_STREAM Stream
2065);
2066
2067struct _RTL_MEMORY_STREAM
2068{
2069 CONST_VTBL struct IStreamVtbl *Vtbl;
2070 LONG RefCount;
2071 ULONG Unk1;
2072 PVOID Current;
2073 PVOID Start;
2074 PVOID End;
2075 PRTL_MEMORY_STREAM_FINAL_RELEASE_ROUTINE FinalRelease;
2077};
2078
2079#endif /* NTOS_MODE_USER */
2080
2081#ifdef __cplusplus
2082}
2083#endif
2084
2085#endif /* !_RTLTYPES_H */
static _Out_opt_ PULONGLONG Start
#define VOID
Definition: acefi.h:82
unsigned char BOOLEAN
Definition: actypes.h:127
@ R15
Definition: amd64_sup.c:13
@ R13
Definition: amd64_sup.c:13
@ R12
Definition: amd64_sup.c:13
@ R9
Definition: amd64_sup.c:13
@ R14
Definition: amd64_sup.c:13
@ R8
Definition: amd64_sup.c:13
@ R11
Definition: amd64_sup.c:13
@ R10
Definition: amd64_sup.c:13
LONG NTSTATUS
Definition: precomp.h:26
#define NTSYSAPI
Definition: ntoskrnl.h:12
_In_ CDROM_SCAN_FOR_SPECIAL_INFO _In_ PCDROM_SCAN_FOR_SPECIAL_HANDLER Function
Definition: cdrom.h:1156
Definition: bufpool.h:45
#define RTL_BITMAP
Definition: dbgbitmap.h:323
#define PRTL_BITMAP
Definition: dbgbitmap.h:324
#define NTSTATUS
Definition: precomp.h:19
EXCEPTION_ROUTINE * PEXCEPTION_ROUTINE
Definition: compat.h:709
struct _EXCEPTION_REGISTRATION_RECORD * PEXCEPTION_REGISTRATION_RECORD
struct _EXCEPTION_REGISTRATION_RECORD EXCEPTION_REGISTRATION_RECORD
#define Trace(x)
Definition: inflate.c:42
#define DECLSPEC_ALIGN(x)
Definition: corecrt.h:141
struct _TIME_FIELDS TIME_FIELDS
TIME_FIELDS * PTIME_FIELDS
Definition: env_spec_w32.h:720
ULONG KSPIN_LOCK
Definition: env_spec_w32.h:72
ULONG ERESOURCE
Definition: env_spec_w32.h:594
ASMGENDATA Table[]
Definition: genincdata.c:61
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
Definition: glfuncs.h:240
_In_ GUID _In_ PVOID ValueData
Definition: hubbusif.h:312
#define C_ASSERT(e)
Definition: intsafe.h:73
static IN LPSTR Unk1
Definition: ldrinit.c:47
#define PRTL_AVL_TABLE
Definition: miavl.h:27
#define PRTL_BALANCED_LINKS
Definition: miavl.h:28
unsigned __int64 ULONG64
Definition: imports.h:198
unsigned __int64 * PULONG64
Definition: imports.h:198
struct tagUserData UserData
static IStream Stream
Definition: htmldoc.c:1115
static PRUNTIME_FUNCTION(WINAPI *pRtlLookupFunctionEntry)(ULONG_PTR
@ Terminated
Definition: ketypes.h:411
_In_ HANDLE ProcessHandle
Definition: mmfuncs.h:407
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize _Pre_valid_ PVOID _In_ ULONG_PTR _In_ SIZE_T CommitSize
Definition: mmfuncs.h:410
_In_ NTSTATUS ExitStatus
Definition: psfuncs.h:868
_In_ PCWSTR _Inout_ _At_ QueryTable EntryContext
Definition: rtlfuncs.h:4230
_In_opt_ ULONG Base
Definition: rtlfuncs.h:2486
struct _RTL_RESOURCE RTL_RESOURCE
struct _RTLP_CURDIR_REF * PRTLP_CURDIR_REF
struct _MESSAGE_RESOURCE_DATA * PMESSAGE_RESOURCE_DATA
struct _RTL_ATOM_TABLE_ENTRY RTL_ATOM_TABLE_ENTRY
NTSTATUS(NTAPI * PRTL_START_POOL_THREAD)(_In_ PTHREAD_START_ROUTINE Function, _In_ PVOID Parameter, _Out_ PHANDLE ThreadHandle)
Definition: rtltypes.h:582
struct _RTL_CRITICAL_SECTION_DEBUG RTL_RESOURCE_DEBUG
struct _ACE * PACE
struct _RTL_BSD_ITEM RTL_BSD_ITEM
struct _RTL_RELATIVE_NAME_U RTL_RELATIVE_NAME_U
_HEAP_INFORMATION_CLASS
Definition: rtltypes.h:489
@ HeapEnableTerminationOnCorruption
Definition: rtltypes.h:491
@ HeapCompatibilityInformation
Definition: rtltypes.h:490
struct _ACE ACE
struct _RTL_USER_PROCESS_INFORMATION * PRTL_USER_PROCESS_INFORMATION
struct _RTL_PROCESS_BACKTRACES RTL_PROCESS_BACKTRACES
struct _RTL_HEAP_WALK_ENTRY RTL_HEAP_WALK_ENTRY
struct _RTL_HEAP_USAGE_ENTRY RTL_HEAP_USAGE_ENTRY
struct _RTL_BSD_DATA_ERROR_INFO RTL_BSD_DATA_ERROR_INFO
struct _RTL_CRITICAL_SECTION * PRTL_CRITICAL_SECTION
struct _CURDIR * PCURDIR
struct _RTL_HANDLE_TABLE_ENTRY * PRTL_HANDLE_TABLE_ENTRY
struct _STACK_TRACE_DATABASE STACK_TRACE_DATABASE
NTSTATUS(NTAPI * PHEAP_ENUMERATION_ROUTINE)(_In_ PVOID HeapHandle, _In_ PVOID UserParam)
Definition: rtltypes.h:560
* PRTL_UMS_CONTEXT
Definition: rtltypes.h:1692
VOID(NTAPI * PRTL_BASE_PROCESS_START_ROUTINE)(PTHREAD_START_ROUTINE StartAddress, PVOID Parameter)
Definition: rtltypes.h:573
struct _RTL_TRACE_SEGMENT RTL_TRACE_SEGMENT
struct _RTL_PROCESS_MODULES RTL_PROCESS_MODULES
struct _RTL_PATCH_HEADER * PRTL_PATCH_HEADER
enum _RTL_UMS_SCHEDULER_REASON RTL_UMS_SCHEDULER_REASON
struct _RTL_BSD_ITEM * PRTL_BSD_ITEM
struct _RTL_BSD_DATA RTL_BSD_DATA
struct _RTL_TRACE_BLOCK * PRTL_TRACE_BLOCK
struct _RTL_DRIVE_LETTER_CURDIR RTL_DRIVE_LETTER_CURDIR
struct _RTL_HANDLE_TABLE * PRTL_HANDLE_TABLE
#define MAXIMUM_LEADBYTES
Definition: rtltypes.h:363
struct _RTL_STACK_TRACE_ENTRY RTL_STACK_TRACE_ENTRY
struct _RTL_CRITICAL_SECTION_DEBUG * PRTL_CRITICAL_SECTION_DEBUG
struct _RTL_HEAP_INFORMATION * PRTL_HEAP_INFORMATION
struct _RTL_HEAP_WALK_ENTRY * PRTL_HEAP_WALK_ENTRY
struct _RTL_PROCESS_MODULE_INFORMATION_EX * PRTL_PROCESS_MODULE_INFORMATION_EX
struct _RTL_RANGE * PRTL_RANGE
enum _RTL_BSD_ITEM_TYPE RTL_BSD_ITEM_TYPE
struct _RTL_USER_PROCESS_PARAMETERS RTL_USER_PROCESS_PARAMETERS
struct _RTL_ACE_DATA RTL_ACE_DATA
struct _RTL_HANDLE_TABLE RTL_HANDLE_TABLE
struct _RTL_RESOURCE * PRTL_RESOURCE
struct _RTL_UNLOAD_EVENT_TRACE * PRTL_UNLOAD_EVENT_TRACE
struct _RTL_PROCESS_BACKTRACE_INFORMATION * PRTL_PROCESS_BACKTRACE_INFORMATION
struct _MESSAGE_RESOURCE_DATA MESSAGE_RESOURCE_DATA
struct _ACTIVATION_CONTEXT_STACK ACTIVATION_CONTEXT_STACK
struct _RTL_CRITICAL_SECTION_DEBUG * PRTL_RESOURCE_DEBUG
struct _RTL_PROCESS_VERIFIER_OPTIONS * PRTL_PROCESS_VERIFIER_OPTIONS
struct _RTL_UNICODE_STRING_BUFFER RTL_UNICODE_STRING_BUFFER
struct _MESSAGE_RESOURCE_ENTRY MESSAGE_RESOURCE_ENTRY
struct _RTL_PROCESS_MODULES * PRTL_PROCESS_MODULES
struct _RTL_FLS_DATA RTL_FLS_DATA
enum _RTL_BSD_ITEM_TYPE * PRTL_BSD_ITEM_TYPE
NTSTATUS(NTAPI * PRTL_EXIT_POOL_THREAD)(_In_ NTSTATUS ExitStatus)
Definition: rtltypes.h:589
struct _RTL_PROCESS_MODULE_INFORMATION RTL_PROCESS_MODULE_INFORMATION
struct _RTL_PROCESS_VERIFIER_OPTIONS RTL_PROCESS_VERIFIER_OPTIONS
struct _RANGE_LIST_ITERATOR RTL_RANGE_LIST_ITERATOR
struct _NLS_FILE_HEADER * PNLS_FILE_HEADER
ULONG(NTAPI * PTHREAD_START_ROUTINE)(PVOID Parameter)
Definition: rtltypes.h:568
struct _RTL_HEAP_INFORMATION RTL_HEAP_INFORMATION
struct _RTL_CRITICAL_SECTION RTL_CRITICAL_SECTION
struct _RTL_BSD_POWER_BUTTON_PRESS_INFO * PRTL_BSD_POWER_BUTTON_PRESS_INFO
struct _RTL_USER_PROCESS_INFORMATION RTL_USER_PROCESS_INFORMATION
struct _RTL_HEAP_USAGE_ENTRY * PRTL_HEAP_USAGE_ENTRY
struct _RTL_HEAP_TAG_INFO * PRTL_HEAP_TAG_INFO
struct _HEAP_LOCK * PHEAP_LOCK
struct _RTL_TIME_ZONE_INFORMATION RTL_TIME_ZONE_INFORMATION
ULONG(NTAPI * RTL_TRACE_HASH_FUNCTION)(ULONG Count, PVOID *Trace)
Definition: rtltypes.h:1837
enum _HEAP_INFORMATION_CLASS HEAP_INFORMATION_CLASS
Definition: heap.c:57
struct _RTL_PROCESS_LOCKS * PRTL_PROCESS_LOCKS
struct _RTL_RANGE RTL_RANGE
struct _RTL_PROCESS_HEAPS RTL_PROCESS_HEAPS
struct _RTL_PROCESS_MODULE_INFORMATION_EX RTL_PROCESS_MODULE_INFORMATION_EX
RTL_UMS_CONTEXT
Definition: rtltypes.h:1692
VOID(NTAPI * WAITORTIMERCALLBACKFUNC)(PVOID pvContext, BOOLEAN fTimerOrWaitFired)
Definition: rtltypes.h:498
struct _RTLP_RANGE_LIST_ENTRY * PRTLP_RANGE_LIST_ENTRY
LONG(NTAPI * PVECTORED_EXCEPTION_HANDLER)(PEXCEPTION_POINTERS ExceptionPointers)
Definition: rtltypes.h:507
#define RTL_FLS_MAXIMUM_AVAILABLE
Definition: rtltypes.h:1222
struct _RTL_TRACE_ENUMERATE RTL_TRACE_ENUMERATE
struct _RTL_DEBUG_INFORMATION RTL_DEBUG_INFORMATION
struct _MESSAGE_RESOURCE_BLOCK MESSAGE_RESOURCE_BLOCK
struct _RTL_BUFFER * PRTL_BUFFER
struct _RTL_TRACE_SEGMENT * PRTL_TRACE_SEGMENT
struct _RTL_TRACE_BLOCK RTL_TRACE_BLOCK
struct _STACK_TRACE_DATABASE * PSTACK_TRACE_DATABASE
struct _RTL_PROCESS_HEAPS * PRTL_PROCESS_HEAPS
BOOLEAN(NTAPI * PRTL_CONFLICT_RANGE_CALLBACK)(PVOID Context, struct _RTL_RANGE *Range)
Definition: rtltypes.h:705
struct _RTL_BUFFER RTL_BUFFER
struct _RTL_PERTHREAD_CURDIR * PRTL_PERTHREAD_CURDIR
struct _RTL_BSD_DATA_POWER_TRANSITION * PRTL_BSD_DATA_POWER_TRANSITION
struct _RTL_PROCESS_LOCKS RTL_PROCESS_LOCKS
struct _MESSAGE_RESOURCE_ENTRY * PMESSAGE_RESOURCE_ENTRY
struct _RTL_HEAP_ENTRY RTL_HEAP_ENTRY
enum _RTL_UMSCTX_FLAGS * PRTL_UMSCTX_FLAGS
enum _RTL_UMS_SCHEDULER_REASON * PRTL_UMS_SCHEDULER_REASON
struct _RTL_ACQUIRE_STATE * PRTL_ACQUIRE_STATE
struct _RTL_HEAP_USAGE RTL_HEAP_USAGE
struct _RTL_PERTHREAD_CURDIR RTL_PERTHREAD_CURDIR
struct _RTL_ACQUIRE_STATE RTL_ACQUIRE_STATE
struct _RTL_RANGE_LIST * PRTL_RANGE_LIST
struct _RTL_DEBUG_INFORMATION * PRTL_DEBUG_INFORMATION
struct _RTL_UNICODE_STRING_BUFFER * PRTL_UNICODE_STRING_BUFFER
struct _RTLP_CURDIR_REF RTLP_CURDIR_REF
RTLP_UNHANDLED_EXCEPTION_FILTER * PRTLP_UNHANDLED_EXCEPTION_FILTER
Definition: rtltypes.h:554
_RTL_UMSCTX_FLAGS
Definition: rtltypes.h:1613
@ UMSCTX_SUSPENDED_BIT
Definition: rtltypes.h:1620
@ UMSCTX_TERMINATED_BIT
Definition: rtltypes.h:1622
@ UMSCTX_VOLATILE_CONTEXT_BIT
Definition: rtltypes.h:1621
@ UMSCTX_RUNNING_ON_SELF_THREAD_BIT
Definition: rtltypes.h:1624
@ UMSCTX_SCHEDULED_THREAD_BIT
Definition: rtltypes.h:1614
@ UMSCTX_DEBUG_ACTIVE_BIT
Definition: rtltypes.h:1623
@ UMSCTX_DENY_RUNNING_ON_SELF_THREAD_BIT
Definition: rtltypes.h:1625
struct _RTL_USER_PROCESS_PARAMETERS * PRTL_USER_PROCESS_PARAMETERS
struct _RTL_HEAP_TAG_INFO RTL_HEAP_TAG_INFO
struct _RTL_BSD_POWER_BUTTON_PRESS_INFO RTL_BSD_POWER_BUTTON_PRESS_INFO
struct _RTL_PROCESS_LOCK_INFORMATION * PRTL_PROCESS_LOCK_INFORMATION
enum _RTL_UMSCTX_FLAGS RTL_UMSCTX_FLAGS
struct _RTL_FLS_DATA * PRTL_FLS_DATA
struct _RTL_HEAP_TAG RTL_HEAP_TAG
struct _RTL_HEAP_USAGE * PRTL_HEAP_USAGE
struct _RTL_HANDLE_TABLE_ENTRY RTL_HANDLE_TABLE_ENTRY
struct _MESSAGE_RESOURCE_BLOCK * PMESSAGE_RESOURCE_BLOCK
_RTL_PATH_TYPE
Definition: rtltypes.h:472
@ RtlPathTypeRootLocalDevice
Definition: rtltypes.h:480
@ RtlPathTypeDriveRelative
Definition: rtltypes.h:476
@ RtlPathTypeRelative
Definition: rtltypes.h:478
@ RtlPathTypeUncAbsolute
Definition: rtltypes.h:474
@ RtlPathTypeRooted
Definition: rtltypes.h:477
@ RtlPathTypeLocalDevice
Definition: rtltypes.h:479
@ RtlPathTypeDriveAbsolute
Definition: rtltypes.h:475
@ RtlPathTypeUnknown
Definition: rtltypes.h:473
struct _RTLP_RANGE_LIST_ENTRY RTLP_RANGE_LIST_ENTRY
struct _RTL_TRACE_DATABASE * PRTL_TRACE_DATABASE
struct _RTL_STACK_TRACE_ENTRY * PRTL_STACK_TRACE_ENTRY
struct _RTL_ACE_DATA * PRTL_ACE_DATA
#define HEAP_CREATE_VALID_MASK
Definition: rtltypes.h:181
struct _RTL_PROCESS_MODULE_INFORMATION * PRTL_PROCESS_MODULE_INFORMATION
struct _ACTIVATION_CONTEXT_STACK * PACTIVATION_CONTEXT_STACK
struct _RTL_PROCESS_BACKTRACE_INFORMATION RTL_PROCESS_BACKTRACE_INFORMATION
struct _CURDIR CURDIR
struct _RTL_ATOM_TABLE_ENTRY * PRTL_ATOM_TABLE_ENTRY
_RTL_BSD_ITEM_TYPE
Definition: rtltypes.h:427
@ RtlBsdItemProductType
Definition: rtltypes.h:429
@ RtlBsdItemVersionNumber
Definition: rtltypes.h:428
@ RtlBsdItemReportedAbnormalShutdownBootId
Definition: rtltypes.h:440
@ RtlBsdItemAabTimeout
Definition: rtltypes.h:431
@ RtlBsdItemErrorInfo
Definition: rtltypes.h:441
@ RtlBsdItemAabEnabled
Definition: rtltypes.h:430
@ RtlBsdItemBootCheckpoint
Definition: rtltypes.h:437
@ RtlBsdPowerTransition
Definition: rtltypes.h:435
@ RtlBsdItemChecksum
Definition: rtltypes.h:443
@ RtlBsdSleepInProgress
Definition: rtltypes.h:434
@ RtlBsdItemMax
Definition: rtltypes.h:444
@ RtlBsdItemBootShutdown
Definition: rtltypes.h:433
@ RtlBsdItemShutdownBootId
Definition: rtltypes.h:439
@ RtlBsdItemBootAttemptCount
Definition: rtltypes.h:436
@ RtlBsdItemBootGood
Definition: rtltypes.h:432
@ RtlBsdItemPowerButtonPressInfo
Definition: rtltypes.h:442
@ RtlBsdItemBootId
Definition: rtltypes.h:438
struct _RTL_ATOM_TABLE RTL_ATOM_TABLE
struct _RTL_HEAP_ENTRY * PRTL_HEAP_ENTRY
struct _RTL_UNLOAD_EVENT_TRACE RTL_UNLOAD_EVENT_TRACE
struct _RTL_PATCH_HEADER RTL_PATCH_HEADER
struct _RTL_RANGE_LIST RTL_RANGE_LIST
struct _RTL_HEAP_TAG * PRTL_HEAP_TAG
struct _HEAP_LOCK HEAP_LOCK
struct _RTL_ATOM_TABLE * PRTL_ATOM_TABLE
struct _RTL_TIME_ZONE_INFORMATION * PRTL_TIME_ZONE_INFORMATION
struct _RTL_RELATIVE_NAME_U * PRTL_RELATIVE_NAME_U
struct _NLS_FILE_HEADER NLS_FILE_HEADER
struct _RTL_DRIVE_LETTER_CURDIR * PRTL_DRIVE_LETTER_CURDIR
struct _RANGE_LIST_ITERATOR * PRTL_RANGE_LIST_ITERATOR
struct _RTL_BSD_DATA_ERROR_INFO * PRTL_BSD_DATA_ERROR_INFO
#define RTL_MAX_DRIVE_LETTERS
Definition: rtltypes.h:57
enum _RTL_PATH_TYPE RTL_PATH_TYPE
_RTL_UMS_SCHEDULER_REASON
Definition: rtltypes.h:1606
@ UmsSchedulerThreadBlocked
Definition: rtltypes.h:1608
@ UmsSchedulerThreadYield
Definition: rtltypes.h:1609
@ UmsSchedulerStartup
Definition: rtltypes.h:1607
struct _RTL_PROCESS_LOCK_INFORMATION RTL_PROCESS_LOCK_INFORMATION
struct _RTL_BSD_DATA_POWER_TRANSITION RTL_BSD_DATA_POWER_TRANSITION
struct _RTL_BSD_DATA * PRTL_BSD_DATA
struct _RTL_TRACE_ENUMERATE * PRTL_TRACE_ENUMERATE
VOID(NTAPI * WORKERCALLBACKFUNC)(_In_ PVOID Context)
Definition: rtltypes.h:515
struct _RTL_PROCESS_BACKTRACES * PRTL_PROCESS_BACKTRACES
struct _RTL_CRITICAL_SECTION_DEBUG RTL_CRITICAL_SECTION_DEBUG
struct _RTL_TRACE_DATABASE RTL_TRACE_DATABASE
#define _Inout_
Definition: no_sal2.h:162
#define _Out_
Definition: no_sal2.h:160
#define _In_
Definition: no_sal2.h:158
int Count
Definition: noreturn.cpp:7
#define NLS_MB_OEM_CODE_PAGE_TAG
Definition: nt_native.h:213
struct _RTL_QUERY_REGISTRY_TABLE * PRTL_QUERY_REGISTRY_TABLE
Definition: reg.c:131
ULONG ACCESS_MASK
Definition: nt_native.h:40
struct _RTL_HEAP_PARAMETERS * PRTL_HEAP_PARAMETERS
struct _RTL_QUERY_REGISTRY_TABLE RTL_QUERY_REGISTRY_TABLE
#define NLS_MB_CODE_PAGE_TAG
Definition: nt_native.h:212
struct _RTL_HEAP_PARAMETERS RTL_HEAP_PARAMETERS
#define RTL_SIZEOF_THROUGH_FIELD(type, field)
Definition: ntbasedef.h:684
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:455
#define CONST_VTBL
Definition: objbase.h:222
#define DUMMYUNIONNAME2
Definition: pecoff.h:93
#define DUMMYUNIONNAME
Definition: pecoff.h:91
#define DUMMYSTRUCTNAME
Definition: pecoff.h:117
short WCHAR
Definition: pedump.c:58
#define BOOLEAN
Definition: pedump.c:73
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
char CHAR
Definition: pedump.c:57
static WCHAR Address[46]
Definition: ping.c:68
struct _UNWIND_HISTORY_TABLE_ENTRY * PUNWIND_HISTORY_TABLE_ENTRY
struct _UNWIND_HISTORY_TABLE_ENTRY UNWIND_HISTORY_TABLE_ENTRY
struct _UNWIND_HISTORY_TABLE UNWIND_HISTORY_TABLE
#define UNWIND_HISTORY_TABLE_SIZE
Definition: rtlsupportapi.h:36
struct _UNWIND_HISTORY_TABLE * PUNWIND_HISTORY_TABLE
_In_ PVOID Context
Definition: storport.h:2269
Definition: rtltypes.h:995
ACE_HEADER Header
Definition: rtltypes.h:996
ACCESS_MASK AccessMask
Definition: rtltypes.h:997
LIST_ENTRY FrameListCache
Definition: rtltypes.h:976
struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME * ActiveFrame
Definition: rtltypes.h:975
UCHAR CompressionUnitShift
Definition: rtltypes.h:661
USHORT CompressionFormatAndEngine
Definition: rtltypes.h:660
ULONG CompressedChunkSizes[ANYSIZE_ARRAY]
Definition: rtltypes.h:666
HANDLE Handle
Definition: rtltypes.h:1371
UNICODE_STRING DosPath
Definition: rtltypes.h:1370
struct _EXCEPTION_REGISTRATION_RECORD * Next
Definition: compat.h:726
PEXCEPTION_ROUTINE Handler
Definition: compat.h:727
BOOLEAN CheckSumInserted
Definition: rtltypes.h:618
WCHAR ExtensionBuffer[4]
Definition: rtltypes.h:622
UCHAR Padding[0x68]
Definition: rtltypes.h:1479
RTL_CRITICAL_SECTION CriticalSection
Definition: rtltypes.h:1475
ERESOURCE Resource
Definition: rtltypes.h:1477
Definition: btrfs_drv.h:1876
Definition: typedefs.h:120
MESSAGE_RESOURCE_BLOCK Blocks[ANYSIZE_ARRAY]
Definition: rtltypes.h:1954
Definition: rtltypes.h:1938
UCHAR Text[ANYSIZE_ARRAY]
Definition: rtltypes.h:1941
USHORT Flags
Definition: rtltypes.h:1940
USHORT Length
Definition: rtltypes.h:1939
USHORT MaximumCharacterSize
Definition: precomp.h:22
UCHAR LeadByte[MAXIMUM_LEADBYTES]
Definition: precomp.h:27
USHORT TransDefaultChar
Definition: precomp.h:25
USHORT HeaderSize
Definition: precomp.h:20
USHORT CodePage
Definition: precomp.h:21
USHORT TransUniDefaultChar
Definition: precomp.h:26
USHORT DefaultChar
Definition: precomp.h:23
USHORT UniDefaultChar
Definition: precomp.h:24
Definition: rtltypes.h:626
CSHORT NodeTypeCode
Definition: rtltypes.h:627
RTL_SPLAY_LINKS Links
Definition: rtltypes.h:630
PSTRING Prefix
Definition: rtltypes.h:631
struct _PREFIX_TABLE_ENTRY * NextPrefixTree
Definition: rtltypes.h:629
CSHORT NameLength
Definition: rtltypes.h:628
PPREFIX_TABLE_ENTRY NextPrefixTree
Definition: rtltypes.h:637
CSHORT NodeTypeCode
Definition: rtltypes.h:635
CSHORT NameLength
Definition: rtltypes.h:636
PLIST_ENTRY RangeListHead
Definition: rtltypes.h:1506
PLIST_ENTRY MergedHead
Definition: rtltypes.h:1507
Definition: rtltypes.h:1513
UCHAR PublicFlags
Definition: rtltypes.h:1529
PVOID Owner
Definition: rtltypes.h:1521
ULONGLONG End
Definition: rtltypes.h:1515
UCHAR Attributes
Definition: rtltypes.h:1528
struct _RTLP_RANGE_LIST_ENTRY::@2959::@2962 Merged
struct _RTLP_RANGE_LIST_ENTRY::@2959::@2961 Allocated
LIST_ENTRY ListEntry
Definition: rtltypes.h:1531
USHORT PrivateFlags
Definition: rtltypes.h:1530
PVOID UserData
Definition: rtltypes.h:1520
ULONGLONG Start
Definition: rtltypes.h:1514
LIST_ENTRY ListHead
Definition: rtltypes.h:1525
UCHAR AceFlags
Definition: rtltypes.h:1406
UCHAR AceType
Definition: rtltypes.h:1404
UCHAR InheritFlags
Definition: rtltypes.h:1405
ACCESS_MASK Mask
Definition: rtltypes.h:1407
PSID * Sid
Definition: rtltypes.h:1408
HANDLE OldImpersonationToken
Definition: rtltypes.h:1417
UCHAR OldPrivBuffer[1024]
Definition: rtltypes.h:1421
PTOKEN_PRIVILEGES NewPrivileges
Definition: rtltypes.h:1419
PTOKEN_PRIVILEGES OldPrivileges
Definition: rtltypes.h:1418
struct _ACTIVATION_CONTEXT * ActivationContext
Definition: winternl.h:324
struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME * Previous
Definition: winternl.h:323
Definition: rtltypes.h:1699
UCHAR NameLength
Definition: rtltypes.h:1705
USHORT Atom
Definition: rtltypes.h:1702
UCHAR Flags
Definition: rtltypes.h:1704
WCHAR Name[1]
Definition: rtltypes.h:1706
USHORT ReferenceCount
Definition: rtltypes.h:1703
USHORT HandleIndex
Definition: rtltypes.h:1701
struct _RTL_ATOM_TABLE_ENTRY * HashLink
Definition: rtltypes.h:1700
PRTL_ATOM_TABLE_ENTRY Buckets[1]
Definition: rtltypes.h:1729
FAST_MUTEX FastMutex
Definition: rtltypes.h:1717
RTL_CRITICAL_SECTION CriticalSection
Definition: winternl.h:3388
PHANDLE_TABLE ExHandleTable
Definition: rtltypes.h:1725
ULONG NumberOfBuckets
Definition: rtltypes.h:1728
ULONG DeleteCount
Definition: rtltypes.h:447
PRTL_AVL_ALLOCATE_ROUTINE AllocateRoutine
Definition: rtltypes.h:449
ULONG DepthOfTree
Definition: rtltypes.h:445
ULONG NumberGenericTableElements
Definition: rtltypes.h:444
RTL_BALANCED_LINKS BalancedRoot
Definition: rtltypes.h:441
PRTL_AVL_COMPARE_ROUTINE CompareRoutine
Definition: rtltypes.h:448
ULONG WhichOrderedElement
Definition: rtltypes.h:443
PRTL_AVL_FREE_ROUTINE FreeRoutine
Definition: rtltypes.h:450
PVOID OrderedPointer
Definition: rtltypes.h:442
PVOID TableContext
Definition: rtltypes.h:451
PRTL_BALANCED_LINKS RestartKey
Definition: rtltypes.h:446
ULONG NumberOfBits
Definition: typedefs.h:97
ULONG StartingIndex
Definition: typedefs.h:96
ULONG SizeOfBitMap
Definition: typedefs.h:90
LARGE_INTEGER LastReferenceTime
Definition: rtltypes.h:1296
struct _RTL_BSD_DATA_POWER_TRANSITION::@2951 Flags
LARGE_INTEGER PowerButtonTimestamp
Definition: rtltypes.h:1283
UCHAR AabTimeout
Definition: rtltypes.h:1339
RTL_BSD_POWER_BUTTON_PRESS_INFO PowerButtonPressInfo
Definition: rtltypes.h:1351
ULONG ProductType
Definition: rtltypes.h:1337
BOOLEAN LastBootShutdown
Definition: rtltypes.h:1341
ULONG LastSuccessfulShutdownBootId
Definition: rtltypes.h:1348
RTL_BSD_DATA_ERROR_INFO ErrorInfo
Definition: rtltypes.h:1350
UCHAR BootAttemptCount
Definition: rtltypes.h:1344
UCHAR LastBootCheckpoint
Definition: rtltypes.h:1345
BOOLEAN SleepInProgress
Definition: rtltypes.h:1342
ULONG LastBootId
Definition: rtltypes.h:1347
BOOLEAN LastBootSucceeded
Definition: rtltypes.h:1340
ULONG LastReportedAbnormalShutdownBootId
Definition: rtltypes.h:1349
BOOLEAN AabEnabled
Definition: rtltypes.h:1338
UCHAR Checksum
Definition: rtltypes.h:1346
ULONG Version
Definition: rtltypes.h:1336
RTL_BSD_DATA_POWER_TRANSITION PowerTransition
Definition: rtltypes.h:1343
ULONG DataLength
Definition: rtltypes.h:1275
RTL_BSD_ITEM_TYPE Type
Definition: rtltypes.h:1273
PVOID DataBuffer
Definition: rtltypes.h:1274
struct _RTL_BSD_POWER_BUTTON_PRESS_INFO::@2952 Flags
SIZE_T StaticSize
Definition: rtltypes.h:1903
PUCHAR StaticBuffer
Definition: rtltypes.h:1901
PVOID ReservedForIMalloc
Definition: rtltypes.h:1905
SIZE_T ReservedForAllocatedSize
Definition: rtltypes.h:1904
PUCHAR Buffer
Definition: rtltypes.h:1900
SIZE_T Size
Definition: rtltypes.h:1902
struct _RTL_CRITICAL_SECTION * CriticalSection
Definition: rtltypes.h:1433
PRTL_CRITICAL_SECTION_DEBUG DebugInfo
Definition: rtltypes.h:1458
PRTL_PROCESS_VERIFIER_OPTIONS VerifierOptions
Definition: rtltypes.h:1212
PRTL_PROCESS_LOCKS Locks
Definition: rtltypes.h:1209
HANDLE CriticalSectionHandle
Definition: rtltypes.h:1214
PRTL_PROCESS_HEAPS Heaps
Definition: rtltypes.h:1208
PRTL_PROCESS_BACKTRACES BackTraces
Definition: rtltypes.h:1207
PRTL_PROCESS_MODULES Modules
Definition: rtltypes.h:1204
PRTL_PROCESS_MODULE_INFORMATION_EX ModulesEx
Definition: rtltypes.h:1205
HANDLE CriticalSectionOwnerThread
Definition: rtltypes.h:1215
UNICODE_STRING DosPath
Definition: rtltypes.h:1392
LIST_ENTRY ListEntry
Definition: rtltypes.h:1225
ULONG WhichOrderedElement
Definition: rtltypes.h:494
PLIST_ENTRY OrderedPointer
Definition: rtltypes.h:493
PRTL_GENERIC_FREE_ROUTINE FreeRoutine
Definition: rtltypes.h:498
LIST_ENTRY InsertOrderList
Definition: rtltypes.h:492
PRTL_GENERIC_ALLOCATE_ROUTINE AllocateRoutine
Definition: rtltypes.h:497
PRTL_GENERIC_COMPARE_ROUTINE CompareRoutine
Definition: rtltypes.h:496
PRTL_SPLAY_LINKS TableRoot
Definition: rtltypes.h:491
ULONG NumberGenericTableElements
Definition: rtltypes.h:495
Definition: rtltypes.h:1249
ULONG Flags
Definition: rtltypes.h:1252
struct _RTL_HANDLE_TABLE_ENTRY * NextFree
Definition: rtltypes.h:1253
PRTL_HANDLE_TABLE_ENTRY UnCommittedHandles
Definition: rtltypes.h:1264
PRTL_HANDLE_TABLE_ENTRY FreeHandles
Definition: rtltypes.h:1262
PRTL_HANDLE_TABLE_ENTRY CommittedHandles
Definition: rtltypes.h:1263
ULONG MaximumNumberOfHandles
Definition: rtltypes.h:1259
PRTL_HANDLE_TABLE_ENTRY MaxReservedHandles
Definition: rtltypes.h:1265
ULONG SizeOfHandleTableEntry
Definition: rtltypes.h:1260
Definition: rtltypes.h:1088
USHORT AllocatorBackTraceIndex
Definition: rtltypes.h:1091
ULONG Tag
Definition: rtltypes.h:1097
PVOID FirstBlock
Definition: rtltypes.h:1102
union _RTL_HEAP_ENTRY::@2944 u
struct _RTL_HEAP_ENTRY::@2944::@2945 s1
SIZE_T Settable
Definition: rtltypes.h:1096
struct _RTL_HEAP_ENTRY::@2944::@2946 s2
SIZE_T CommittedSize
Definition: rtltypes.h:1101
SIZE_T Size
Definition: rtltypes.h:1089
USHORT Flags
Definition: rtltypes.h:1090
USHORT CreatorBackTraceIndex
Definition: rtltypes.h:1122
PRTL_HEAP_TAG Tags
Definition: rtltypes.h:1130
PRTL_HEAP_ENTRY Entries
Definition: rtltypes.h:1131
ULONG DeCommitFreeBlockThreshold
Definition: nt_native.h:1673
ULONG VirtualMemoryThreshold
Definition: nt_native.h:1676
ULONG DeCommitTotalFreeThreshold
Definition: nt_native.h:1674
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine
Definition: nt_native.h:1679
ULONG NumberOfAllocations
Definition: rtltypes.h:1034
SIZE_T BytesAllocated
Definition: rtltypes.h:1036
USHORT TagIndex
Definition: rtltypes.h:1112
SIZE_T BytesAllocated
Definition: rtltypes.h:1111
USHORT CreatorBackTraceIndex
Definition: rtltypes.h:1113
ULONG NumberOfFrees
Definition: rtltypes.h:1110
WCHAR TagName[24]
Definition: rtltypes.h:1114
ULONG NumberOfAllocations
Definition: rtltypes.h:1109
Definition: rtltypes.h:1040
PVOID Address
Definition: rtltypes.h:1042
USHORT AllocatorBackTraceIndex
Definition: rtltypes.h:1044
USHORT TagIndex
Definition: rtltypes.h:1045
struct _RTL_HEAP_USAGE_ENTRY * Next
Definition: rtltypes.h:1041
SIZE_T Size
Definition: rtltypes.h:1043
SIZE_T BytesAllocated
Definition: rtltypes.h:1051
SIZE_T BytesReserved
Definition: rtltypes.h:1053
PRTL_HEAP_USAGE_ENTRY Entries
Definition: rtltypes.h:1055
PRTL_HEAP_USAGE_ENTRY AddedEntries
Definition: rtltypes.h:1056
SIZE_T BytesReservedMaximum
Definition: rtltypes.h:1054
SIZE_T BytesCommitted
Definition: rtltypes.h:1052
PRTL_HEAP_USAGE_ENTRY RemovedEntries
Definition: rtltypes.h:1057
Definition: rtltypes.h:1062
SIZE_T Settable
Definition: rtltypes.h:1072
PVOID LastEntry
Definition: rtltypes.h:1082
PVOID FirstEntry
Definition: rtltypes.h:1081
ULONG_PTR CommittedSize
Definition: rtltypes.h:1079
PVOID DataAddress
Definition: rtltypes.h:1063
UCHAR SegmentIndex
Definition: rtltypes.h:1066
USHORT AllocatorBackTraceIndex
Definition: rtltypes.h:1074
USHORT TagIndex
Definition: rtltypes.h:1073
UCHAR OverheadBytes
Definition: rtltypes.h:1065
ULONG_PTR UnCommittedSize
Definition: rtltypes.h:1080
USHORT Flags
Definition: rtltypes.h:1067
struct _RTL_HEAP_WALK_ENTRY::@2940::@2943 Segment
struct _RTL_HEAP_WALK_ENTRY::@2940::@2942 Block
SIZE_T DataSize
Definition: rtltypes.h:1064
struct _HOTPATCH_HEADER * HotpatchHeader
Definition: rtltypes.h:1756
struct _RTL_PATCH_HEADER * NextPath
Definition: rtltypes.h:1753
PLDR_DATA_TABLE_ENTRY TargetLdrDataTableEntry
Definition: rtltypes.h:1759
PVOID PatchImageBase
Definition: rtltypes.h:1752
PLDR_DATA_TABLE_ENTRY PatchLdrDataTableEntry
Definition: rtltypes.h:1760
LIST_ENTRY PatchList
Definition: rtltypes.h:1751
struct _SYSTEM_HOTPATCH_CODE_INFORMATION * CodeInfo
Definition: rtltypes.h:1761
UNICODE_STRING TargetDllName
Definition: rtltypes.h:1757
PUNICODE_STRING ImageName
Definition: rtltypes.h:1398
PRTL_DRIVE_LETTER_CURDIR CurrentDirectories
Definition: rtltypes.h:1397
RTL_PROCESS_BACKTRACE_INFORMATION BackTraces[1]
Definition: rtltypes.h:1175
RTL_HEAP_INFORMATION Heaps[1]
Definition: rtltypes.h:1137
RTL_PROCESS_LOCK_INFORMATION Locks[1]
Definition: rtltypes.h:1157
RTL_PROCESS_MODULE_INFORMATION Modules[1]
Definition: rtltypes.h:1020
RTL_PROCESS_MODULE_INFORMATION BaseInfo
Definition: rtltypes.h:1026
PRTL_QUERY_REGISTRY_ROUTINE QueryRoutine
Definition: nt_native.h:109
LIST_ENTRY ListHead
Definition: rtltypes.h:1488
ULONGLONG End
Definition: rtltypes.h:1497
ULONGLONG Start
Definition: rtltypes.h:1496
UCHAR Attributes
Definition: rtltypes.h:1500
PVOID UserData
Definition: rtltypes.h:1498
PVOID Owner
Definition: rtltypes.h:1499
UCHAR Flags
Definition: rtltypes.h:1501
UNICODE_STRING RelativeName
Definition: rtltypes.h:1382
HANDLE ContainingDirectory
Definition: rtltypes.h:1383
PRTLP_CURDIR_REF CurDirRef
Definition: rtltypes.h:1384
LONG NumberActive
Definition: rtltypes.h:1547
HANDLE SharedSemaphore
Definition: rtltypes.h:1543
ULONG ExclusiveWaiters
Definition: rtltypes.h:1546
PVOID DebugInfo
Definition: rtltypes.h:1550
HANDLE OwningThread
Definition: rtltypes.h:1548
ULONG TimeoutBoost
Definition: rtltypes.h:1549
ULONG SharedWaiters
Definition: rtltypes.h:1544
HANDLE ExclusiveSemaphore
Definition: rtltypes.h:1545
RTL_CRITICAL_SECTION Lock
Definition: rtltypes.h:1542
Definition: rtltypes.h:1783
PVOID BackTrace[32]
Definition: rtltypes.h:1788
ULONG TraceCount
Definition: rtltypes.h:1785
USHORT Index
Definition: rtltypes.h:1786
USHORT Depth
Definition: rtltypes.h:1787
struct _RTL_STACK_TRACE_ENTRY * HashChain
Definition: rtltypes.h:1784
struct _RTL_TRACE_BLOCK * Next
Definition: rtltypes.h:1847
struct _RTL_TRACE_BLOCK ** Buckets
Definition: rtltypes.h:1870
union _RTL_TRACE_DATABASE::@2968 u
struct _RTL_TRACE_SEGMENT * SegmentList
Definition: rtltypes.h:1856
ULONG HashCounter[16]
Definition: rtltypes.h:1874
RTL_TRACE_HASH_FUNCTION HashFunction
Definition: rtltypes.h:1871
KSPIN_LOCK SpinLock
Definition: rtltypes.h:1865
FAST_MUTEX FastMutex
Definition: rtltypes.h:1866
struct _RTL_TRACE_DATABASE * Database
Definition: rtltypes.h:1890
struct _RTL_TRACE_BLOCK * Block
Definition: rtltypes.h:1892
struct _RTL_TRACE_DATABASE * Database
Definition: rtltypes.h:1880
struct _RTL_TRACE_SEGMENT * NextSegment
Definition: rtltypes.h:1881
WCHAR MinimumStaticBufferForTerminalNul
Definition: rtltypes.h:1912
UNICODE_STRING String
Definition: rtltypes.h:1910
SECTION_IMAGE_INFORMATION ImageInformation
Definition: rtltypes.h:1600
UNICODE_STRING RuntimeData
Definition: rtltypes.h:1584
UNICODE_STRING CommandLine
Definition: btrfs_drv.h:1902
RTL_DRIVE_LETTER_CURDIR CurrentDirectories[RTL_MAX_DRIVE_LETTERS]
Definition: rtltypes.h:1585
UNICODE_STRING ImagePathName
Definition: btrfs_drv.h:1901
UNICODE_STRING WindowTitle
Definition: rtltypes.h:1581
UNICODE_STRING ShellInfo
Definition: rtltypes.h:1583
UNICODE_STRING DesktopInfo
Definition: rtltypes.h:1582
Definition: ntbasedef.h:640
PVOID CurrentUpperCommitLimit
Definition: rtltypes.h:1810
PRTL_STACK_TRACE_ENTRY * EntryIndexArray
Definition: rtltypes.h:1817
PRTL_STACK_TRACE_ENTRY Buckets[ANYSIZE_ARRAY]
Definition: rtltypes.h:1820
PVOID CurrentLowerCommitLimit
Definition: rtltypes.h:1809
ULONG NumberOfAllocationFailures
Definition: rtltypes.h:1816
USHORT Milliseconds
Definition: env_spec_w32.h:717
USHORT Weekday
Definition: env_spec_w32.h:718
Definition: rtltypes.h:640
struct _UNICODE_PREFIX_TABLE_ENTRY * CaseMatch
Definition: rtltypes.h:644
PUNICODE_STRING Prefix
Definition: rtltypes.h:646
struct _UNICODE_PREFIX_TABLE_ENTRY * NextPrefixTree
Definition: rtltypes.h:643
CSHORT NameLength
Definition: rtltypes.h:642
RTL_SPLAY_LINKS Links
Definition: rtltypes.h:645
CSHORT NodeTypeCode
Definition: rtltypes.h:641
PUNICODE_PREFIX_TABLE_ENTRY LastNextEntry
Definition: rtltypes.h:653
PUNICODE_PREFIX_TABLE_ENTRY NextPrefixTree
Definition: rtltypes.h:652
Definition: rtlsupportapi.h:39
ULONG_PTR ImageBase
Definition: rtlsupportapi.h:40
PRUNTIME_FUNCTION FunctionEntry
Definition: rtlsupportapi.h:41
UNWIND_HISTORY_TABLE_ENTRY Entry[UNWIND_HISTORY_TABLE_SIZE]
Definition: rtlsupportapi.h:53
ULONG_PTR * PSIZE_T
Definition: typedefs.h:80
uint16_t * PWSTR
Definition: typedefs.h:56
uint32_t * PULONG
Definition: typedefs.h:59
const uint16_t * PCWSTR
Definition: typedefs.h:57
unsigned char UCHAR
Definition: typedefs.h:53
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:255
#define ANYSIZE_ARRAY
Definition: typedefs.h:46
#define NTAPI
Definition: typedefs.h:36
void * PVOID
Definition: typedefs.h:50
ULONG_PTR SIZE_T
Definition: typedefs.h:80
struct _RTL_BITMAP_RUN RTL_BITMAP_RUN
uint64_t ULONGLONG
Definition: typedefs.h:67
struct _RTL_BITMAP_RUN * PRTL_BITMAP_RUN
uint32_t ULONG_PTR
Definition: typedefs.h:65
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
char * PCHAR
Definition: typedefs.h:51
ULONG CLONG
Definition: umtypes.h:126
short CSHORT
Definition: umtypes.h:127
static int Link(const char **args)
Definition: vfdcmd.c:2414
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4539
_In_ WDFINTERRUPT _In_ WDF_INTERRUPT_POLICY _In_ WDF_INTERRUPT_PRIORITY Priority
Definition: wdfinterrupt.h:655
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG _Out_opt_ PULONG ValueType
Definition: wdfregistry.h:282
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:243
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
Definition: wdfregistry.h:275
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
Definition: wdfsync.h:127
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
RTL_HEAP_COMMIT_ROUTINE * PRTL_HEAP_COMMIT_ROUTINE
Definition: winternl.h:2787
struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME RTL_ACTIVATION_CONTEXT_STACK_FRAME
struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME * PRTL_ACTIVATION_CONTEXT_STACK_FRAME
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
_In_opt_ PVOID _Out_ PLARGE_INTEGER Cookie
Definition: cmfuncs.h:14
FAST_MUTEX
Definition: extypes.h:17
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS _Inout_ PLARGE_INTEGER NumberOfBytes
Definition: iotypes.h:1036
@ Suspended
Definition: ketypes.h:472
* PM128A
Definition: ketypes.h:1008
struct _UNICODE_PREFIX_TABLE_ENTRY UNICODE_PREFIX_TABLE_ENTRY
RTL_AVL_FREE_ROUTINE * PRTL_AVL_FREE_ROUTINE
Definition: rtltypes.h:421
TABLE_SEARCH_RESULT
Definition: rtltypes.h:386
struct _PREFIX_TABLE * PPREFIX_TABLE
struct _COMPRESSED_DATA_INFO COMPRESSED_DATA_INFO
struct _PREFIX_TABLE PREFIX_TABLE
struct _GENERATE_NAME_CONTEXT * PGENERATE_NAME_CONTEXT
_IRQL_requires_same_ _In_ PVOID _In_ PVOID MatchData
Definition: rtltypes.h:429
struct _UNICODE_PREFIX_TABLE_ENTRY * PUNICODE_PREFIX_TABLE_ENTRY
struct _RTL_AVL_TABLE RTL_AVL_TABLE
RTL_QUERY_REGISTRY_ROUTINE * PRTL_QUERY_REGISTRY_ROUTINE
Definition: rtltypes.h:53
NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine
struct _GENERATE_NAME_CONTEXT GENERATE_NAME_CONTEXT
RTL_GENERIC_FREE_ROUTINE * PRTL_GENERIC_FREE_ROUTINE
Definition: rtltypes.h:488
RTL_AVL_MATCH_FUNCTION * PRTL_AVL_MATCH_FUNCTION
Definition: rtltypes.h:430
_Inout_opt_ PVOID Parameter
Definition: rtltypes.h:336
struct _RTL_GENERIC_TABLE RTL_GENERIC_TABLE
struct _RTL_BALANCED_LINKS RTL_BALANCED_LINKS
struct _COMPRESSED_DATA_INFO * PCOMPRESSED_DATA_INFO
NTKERNELAPI const PRTL_FREE_STRING_ROUTINE RtlFreeStringRoutine
_IRQL_requires_same_ _In_ PVOID _In_ PVOID SecondStruct
Definition: rtltypes.h:403
struct _RTL_SPLAY_LINKS * PRTL_SPLAY_LINKS
RTL_AVL_ALLOCATE_ROUTINE * PRTL_AVL_ALLOCATE_ROUTINE
Definition: rtltypes.h:413
RTL_GENERIC_COMPARE_ROUTINE * PRTL_GENERIC_COMPARE_ROUTINE
Definition: rtltypes.h:471
VOID(NTAPI * PRTL_FREE_STRING_ROUTINE)(_In_ __drv_freesMem(Mem) _Post_invalid_ PVOID Buffer)
Definition: rtltypes.h:582
struct _RTL_GENERIC_TABLE * PRTL_GENERIC_TABLE
_IRQL_requires_same_ _In_ CLONG ByteSize
Definition: rtltypes.h:412
struct _PREFIX_TABLE_ENTRY PREFIX_TABLE_ENTRY
struct _UNICODE_PREFIX_TABLE * PUNICODE_PREFIX_TABLE
struct _UNICODE_PREFIX_TABLE UNICODE_PREFIX_TABLE
struct _RTL_SPLAY_LINKS RTL_SPLAY_LINKS
_IRQL_requires_same_ _In_ PVOID FirstStruct
Definition: rtltypes.h:402
RTL_GENERIC_ALLOCATE_ROUTINE * PRTL_GENERIC_ALLOCATE_ROUTINE
Definition: rtltypes.h:480
_RTL_GENERIC_COMPARE_RESULTS
Definition: rtltypes.h:388
@ GenericLessThan
Definition: rtltypes.h:389
@ GenericEqual
Definition: rtltypes.h:391
@ GenericGreaterThan
Definition: rtltypes.h:390
struct _PREFIX_TABLE_ENTRY * PPREFIX_TABLE_ENTRY
RTL_AVL_COMPARE_ROUTINE * PRTL_AVL_COMPARE_ROUTINE
Definition: rtltypes.h:404
_Inout_ PVOID * CommitAddress
Definition: rtltypes.h:597
enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS