ReactOS 0.4.16-dev-319-g6cf4263
ntddk_ex.h
Go to the documentation of this file.
1#ifndef __NTDDK_EX__H__
2#define __NTDDK_EX__H__
3
4//#ifndef USE_REACTOS_DDK
5#ifdef ASSERT
6#undef ASSERT
7#define ASSERT(x) ((void)0)
8#endif //ASSERT
9//#endif //USE_REACTOS_DDK
10
11
12#if !defined(FILE_CHARACTERISTIC_PNP_DEVICE) || defined(USE_REACTOS_DDK) // DDK 2003
13
14#ifndef FILE_CHARACTERISTIC_PNP_DEVICE
15#define FILE_CHARACTERISTIC_PNP_DEVICE 0x00000800
16#endif
17
49#ifndef USE_REACTOS_DDK
53#else
57#endif // USE_REACTOS_DDK
67#ifdef USE_REACTOS_DDK
69#elif defined IRP_MN_START_DEVICE
70 SystemPowerInformationInfo,
71#else
73#endif // USE_REACTOS_DDK
77#ifdef USE_REACTOS_DDK
96 SystemExtendedHanfleInformation,
106 SystemWo64SharedInformationObosolete,
131#endif // USE_REACTOS_DDK
133
134#endif // !defined(FILE_CHARACTERISTIC_PNP_DEVICE) || defined(USE_REACTOS_DDK)
135
136
139NTAPI
141 IN SYSTEM_INFORMATION_CLASS SystemInfoClass,
145);
146
149NTAPI
151 IN SYSTEM_INFORMATION_CLASS SystemInfoClass,
155);
156
170
171typedef struct _SYSTEM_MODULE_ENTRY
172{
181 CHAR ModuleName [256];
183
184typedef struct _SYSTEM_MODULE_INFORMATION
185{
186 ULONG Count;
189
190typedef unsigned short WORD;
191#ifndef __REACTOS__
192typedef unsigned int BOOL;
193#endif //__REACTOS__
194typedef unsigned long DWORD;
195typedef unsigned char BYTE;
196
197
198typedef struct _LDR_DATA_TABLE_ENTRY {
210 union {
212 struct {
215 };
216 };
219
220typedef struct _PEB_LDR_DATA {
228
229typedef struct _PEB_FREE_BLOCK {
233
234#define GDI_HANDLE_BUFFER_SIZE 34
235
236#define TLS_MINIMUM_AVAILABLE 64 // winnt
237
238typedef struct _PEB {
239 BOOLEAN InheritedAddressSpace; // These four fields cannot change unless the
243 HANDLE Mutant; // INITIAL_PEB structure is also updated.
244
260 ULONG TlsBitmapBits[2]; // relates to TLS_MINIMUM_AVAILABLE
267
268 // Useful information for LdrpInitialize
271
272 // Passed up from MmCreatePeb from Session Manager registry key
273
279
280 // Where heap manager keeps track of all heaps created for a process
281 // Fields initialized by MmCreatePeb. ProcessHeaps is initialized
282 // to point to the first free byte after the PEB and MaximumNumberOfHeaps
283 // is computed from the page size used to hold the PEB, less the fixed
284 // size of this data structure.
285
289
290 //
291 //
296
297 // Following fields filled in by MmCreatePeb from system values and/or
298 // image header.
299
310
311//
312// Gdi command batching
313//
314
315#define GDI_BATCH_BUFFER_SIZE 310
316
317typedef struct _GDI_TEB_BATCH {
322
323//
324// TEB - The thread environment block
325//
326
327#define STATIC_UNICODE_BUFFER_LENGTH 261
328#define WIN32_CLIENT_INFO_LENGTH 31
329#define WIN32_CLIENT_INFO_SPIN_COUNT 1
330
331typedef struct _TEB {
341 PVOID Win32ThreadInfo; // PtiCurrent
342 ULONG Win32ClientInfo[WIN32_CLIENT_INFO_LENGTH]; // User32 Client Info
343 PVOID WOW32Reserved; // used by WOW
346 PVOID SystemReserved1[54]; // Used by FP emulator
347 PVOID Spare1; // unused
348 NTSTATUS ExceptionCode; // for RaiseUserException
350 PVOID SystemReserved2[10]; // Used by user/console for temp obja
351 GDI_TEB_BATCH GdiTebBatch; // Gdi batching
360 PVOID UserReserved[5]; // unused
361 PVOID glDispatchTable[280]; // OpenGL
362 ULONG glReserved1[26]; // OpenGL
363 PVOID glReserved2; // OpenGL
364 PVOID glSectionInfo; // OpenGL
365 PVOID glSection; // OpenGL
366 PVOID glTable; // OpenGL
367 PVOID glCurrentRC; // OpenGL
368 PVOID glContext; // OpenGL
375 PVOID Vdm;
380 PVOID WinSockData; // WinSock
388typedef TEB *PTEB;
389
390typedef struct _KTHREAD_HDR {
391
392 //
393 // The dispatcher header and mutant listhead are faifly infrequently
394 // referenced, but pad the thread to a 32-byte boundary (assumption
395 // that pool allocation is in units of 32-bytes).
396 //
397
400
401 //
402 // The following fields are referenced during trap, interrupts, or
403 // context switches.
404 //
405 // N.B. The Teb address and TlsArray are loaded as a quadword quantity
406 // on MIPS and therefore must to on a quadword boundary.
407 //
408
421/* KAPC_STATE ApcState;
422 ULONG ContextSwitches;
423
424 //
425 // The following fields are referenced during wait operations.
426 //
427
428 NTSTATUS WaitStatus;
429 KIRQL WaitIrql;
430 KPROCESSOR_MODE WaitMode;
431 BOOLEAN WaitNext;
432 UCHAR WaitReason;
433 PRKWAIT_BLOCK WaitBlockList;
434 LIST_ENTRY WaitListEntry;
435 ULONG WaitTime;
436 SCHAR BasePriority;
437 UCHAR DecrementCount;
438 SCHAR PriorityDecrement;
439 SCHAR Quantum;
440 KWAIT_BLOCK WaitBlock[THREAD_WAIT_OBJECTS + 1];
441 PVOID LegoData;
442 ULONG KernelApcDisable;
443 KAFFINITY UserAffinity;
444 BOOLEAN SystemAffinityActive;
445 UCHAR Pad[3];
446 PVOID ServiceTable;
447// struct _ECHANNEL *Channel;
448// PVOID Section;
449// PCHANNEL_MESSAGE SystemView;
450// PCHANNEL_MESSAGE ThreadView;
451
452 //
453 // The following fields are referenced during queue operations.
454 //
455
456 PRKQUEUE Queue;
457 KSPIN_LOCK ApcQueueLock;
458 KTIMER Timer;
459 LIST_ENTRY QueueListEntry;
460
461 //
462 // The following fields are referenced during read and find ready
463 // thread.
464 //
465
466 KAFFINITY Affinity;
467 BOOLEAN Preempted;
468 BOOLEAN ProcessReadyQueue;
469 BOOLEAN KernelStackResident;
470 UCHAR NextProcessor;
471
472 //
473 // The following fields are referenced suring system calls.
474 //
475
476 PVOID CallbackStack;
477 PVOID Win32Thread;
478 PKTRAP_FRAME TrapFrame;
479 PKAPC_STATE ApcStatePointer[2];
480 UCHAR EnableStackSwap;
481 UCHAR LargeStack;
482 UCHAR ResourceIndex;
483 CCHAR PreviousMode;
484
485 //
486 // The following entries are reference during clock interrupts.
487 //
488
489 ULONG KernelTime;
490 ULONG UserTime;
491
492 //
493 // The following fileds are referenced during APC queuing and process
494 // attach/detach.
495 //
496
497 KAPC_STATE SavedApcState;
498 BOOLEAN Alertable;
499 UCHAR ApcStateIndex;
500 BOOLEAN ApcQueueable;
501 BOOLEAN AutoAlignment;
502
503 //
504 // The following fields are referenced when the thread is initialized
505 // and very infrequently thereafter.
506 //
507
508 PVOID StackBase;
509 KAPC SuspendApc;
510 KSEMAPHORE SuspendSemaphore;
511 LIST_ENTRY ThreadListEntry;
512
513 //
514 // N.B. The below four UCHARs share the same DWORD and are modified
515 // by other threads. Therefore, they must ALWAYS be modified
516 // under the dispatcher lock to prevent granularity problems
517 // on Alpha machines.
518 //
519 CCHAR FreezeCount;
520 CCHAR SuspendCount;
521 UCHAR IdealProcessor;
522 UCHAR DisableBoost;
523*/
525
526#ifndef __REACTOS__
527typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header
528 WORD e_magic; // Magic number
529 WORD e_cblp; // Bytes on last page of file
530 WORD e_cp; // Pages in file
531 WORD e_crlc; // Relocations
532 WORD e_cparhdr; // Size of header in paragraphs
533 WORD e_minalloc; // Minimum extra paragraphs needed
534 WORD e_maxalloc; // Maximum extra paragraphs needed
535 WORD e_ss; // Initial (relative) SS value
536 WORD e_sp; // Initial SP value
537 WORD e_csum; // Checksum
538 WORD e_ip; // Initial IP value
539 WORD e_cs; // Initial (relative) CS value
540 WORD e_lfarlc; // File address of relocation table
541 WORD e_ovno; // Overlay number
542 WORD e_res[4]; // Reserved words
543 WORD e_oemid; // OEM identifier (for e_oeminfo)
544 WORD e_oeminfo; // OEM information; e_oemid specific
545 WORD e_res2[10]; // Reserved words
546 LONG e_lfanew; // File address of new exe header
548
549typedef struct _IMAGE_FILE_HEADER {
558
559typedef struct _IMAGE_DATA_DIRECTORY {
561 DWORD Size;
563#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
564
565
566typedef struct _IMAGE_OPTIONAL_HEADER {
567 //
568 // Standard fields.
569 //
570
571 WORD Magic;
580
581 //
582 // NT additional fields.
583 //
584
608
609typedef struct _IMAGE_NT_HEADERS {
616
617#define IMAGE_DIRECTORY_ENTRY_EXPORT 0 // Export Directory
618
619typedef struct _IMAGE_EXPORT_DIRECTORY {
624 DWORD Name;
625 DWORD Base;
628 DWORD AddressOfFunctions; // RVA from base of image
629 DWORD AddressOfNames; // RVA from base of image
630 DWORD AddressOfNameOrdinals; // RVA from base of image
632#endif
633
635VOID
636NTAPI
639 );
640
642VOID
643NTAPI
645 OUT PULONG WidthInCharacters,
646 OUT PULONG HeightInLines,
647 OUT PULONG CursorColumn,
648 OUT PULONG CursorRow
649 );
650
652VOID
653NTAPI
655 IN ULONG CursorColumn,
656 IN ULONG CursorRow
657 );
658
659extern ULONG NtBuildNumber;
660
661#endif //__NTDDK_EX__H__
unsigned char BOOLEAN
LONG NTSTATUS
Definition: precomp.h:26
#define NTSYSAPI
Definition: ntoskrnl.h:12
Definition: bufpool.h:45
#define GDI_BATCH_BUFFER_SIZE
Definition: compat.h:828
ULONG_PTR KAFFINITY
Definition: compat.h:85
struct _SYSTEM_MODULE_ENTRY * PSYSTEM_MODULE_ENTRY
struct _SYSTEM_MODULE_INFORMATION * PSYSTEM_MODULE_INFORMATION
IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS
Definition: ntddk_ex.h:186
struct _IMAGE_NT_HEADERS * PIMAGE_NT_HEADERS32
unsigned int BOOL
Definition: ntddk_ex.h:94
struct _IMAGE_DATA_DIRECTORY IMAGE_DATA_DIRECTORY
unsigned char BYTE
Definition: ntddk_ex.h:96
unsigned long DWORD
Definition: ntddk_ex.h:95
struct _IMAGE_FILE_HEADER IMAGE_FILE_HEADER
struct _SYSTEM_MODULE_ENTRY SYSTEM_MODULE_ENTRY
struct _IMAGE_OPTIONAL_HEADER * PIMAGE_OPTIONAL_HEADER32
PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS
Definition: ntddk_ex.h:187
NTSYSAPI NTSTATUS NTAPI ZwQuerySystemInformation(IN SYSTEM_INFORMATION_CLASS SystemInfoClass, OUT PVOID SystemInfoBuffer, IN ULONG SystemInfoBufferSize, OUT PULONG BytesReturned OPTIONAL)
struct _IMAGE_EXPORT_DIRECTORY * PIMAGE_EXPORT_DIRECTORY
struct _IMAGE_DOS_HEADER IMAGE_DOS_HEADER
struct _SYSTEM_MODULE_INFORMATION SYSTEM_MODULE_INFORMATION
struct _IMAGE_OPTIONAL_HEADER IMAGE_OPTIONAL_HEADER32
struct _IMAGE_DATA_DIRECTORY * PIMAGE_DATA_DIRECTORY
struct _IMAGE_EXPORT_DIRECTORY IMAGE_EXPORT_DIRECTORY
_SYSTEM_INFORMATION_CLASS
Definition: ntddk_ex.h:10
@ SystemCurrentTimeZoneInformation
Definition: ntddk_ex.h:59
@ SystemKernelDebuggerInformation
Definition: ntddk_ex.h:46
@ SystemTimeOfDayInformation
Definition: ntddk_ex.h:14
@ SystemProcessorInformation
Definition: ntddk_ex.h:12
@ SystemModuleInformation
Definition: ntddk_ex.h:22
@ SystemExceptionInformation
Definition: ntddk_ex.h:44
@ SystemBasicInformation
Definition: ntddk_ex.h:11
@ SystemDpcBehaviorInformation
Definition: ntddk_ex.h:35
@ SystemPathInformation
Definition: ntddk_ex.h:15
@ SystemVdmInstemulInformation
Definition: ntddk_ex.h:30
@ SystemPowerInformation
Definition: ntddk_ex.h:54
@ SystemLookasideInformation
Definition: ntddk_ex.h:60
@ SystemRegistryQuotaInformation
Definition: ntddk_ex.h:48
@ SystemExtendServiceTableInformation
Definition: ntddk_ex.h:49
@ SystemNonPagedPoolInformation
Definition: ntddk_ex.h:26
@ SystemCrashDumpInformation
Definition: ntddk_ex.h:43
@ SystemInterruptInformation
Definition: ntddk_ex.h:34
@ SystemNextEventIdInformation
Definition: ntddk_ex.h:41
@ SystemUnloadGdiDriverInformation
Definition: ntddk_ex.h:38
@ SystemFileCacheInformation
Definition: ntddk_ex.h:32
@ SystemLocksInformation
Definition: ntddk_ex.h:23
@ SystemHandleInformation
Definition: ntddk_ex.h:27
@ SystemProcessInformation
Definition: ntddk_ex.h:16
@ SystemVdmBopInformation
Definition: ntddk_ex.h:31
@ SystemEventIdsInformation
Definition: ntddk_ex.h:42
@ SystemCallTimeInformation
Definition: ntddk_ex.h:21
@ SystemContextSwitchInformation
Definition: ntddk_ex.h:47
@ SystemTimeAdjustmentInformation
Definition: ntddk_ex.h:39
@ SystemFullMemoryInformation
Definition: ntddk_ex.h:36
@ SystemPrioritySeperation
Definition: ntddk_ex.h:50
@ SystemPageFileInformation
Definition: ntddk_ex.h:29
@ SystemPerformanceInformation
Definition: ntddk_ex.h:13
@ SystemStackTraceInformation
Definition: ntddk_ex.h:24
@ SystemPlugPlayBusInformation
Definition: ntddk_ex.h:51
@ SystemObjectInformation
Definition: ntddk_ex.h:28
@ SystemFlagsInformation
Definition: ntddk_ex.h:20
@ SystemLoadGdiDriverInformation
Definition: ntddk_ex.h:37
@ SystemDeviceInformation
Definition: ntddk_ex.h:18
@ SystemSummaryMemoryInformation
Definition: ntddk_ex.h:40
@ SystemPagedPoolInformation
Definition: ntddk_ex.h:25
@ SystemCrashDumpStateInformation
Definition: ntddk_ex.h:45
@ SystemProcessorPerformanceInformation
Definition: ntddk_ex.h:19
@ SystemCallCountInformation
Definition: ntddk_ex.h:17
@ SystemPoolTagInformation
Definition: ntddk_ex.h:33
@ SystemDockInformation
Definition: ntddk_ex.h:52
@ SystemProcessorSpeedInformation
Definition: ntddk_ex.h:58
struct _IMAGE_DOS_HEADER * PIMAGE_DOS_HEADER
enum _SYSTEM_INFORMATION_CLASS SYSTEM_INFORMATION_CLASS
struct _IMAGE_NT_HEADERS IMAGE_NT_HEADERS32
struct _IMAGE_FILE_HEADER * PIMAGE_FILE_HEADER
unsigned short WORD
Definition: ntddk_ex.h:93
LONG NTSTATUS
Definition: winternl.h:37
@ SystemSessionInformation
Definition: extypes.h:266
@ SystemVerifierCancellationInformation
Definition: extypes.h:301
@ SystemSuperfetchInformation
Definition: extypes.h:296
@ SystemWatchDogTimerInformation
Definition: extypes.h:289
@ SystemTimeSlipNotification
Definition: extypes.h:263
@ SystemProcessorPowerInformation
Definition: extypes.h:278
@ MaxSystemInfoClass
Definition: extypes.h:315
@ SystemFirmwareTableInformation
Definition: extypes.h:293
@ SystemLogicalProcessorInformation
Definition: extypes.h:290
@ SystemPrefetchPathInformation
Definition: extypes.h:313
@ SystemMemoryListInformation
Definition: extypes.h:297
@ SystemVerifierTriageInformation
Definition: extypes.h:295
@ SystemVerifierInformation
Definition: extypes.h:268
@ SystemEmulationBasicInformation
Definition: extypes.h:279
@ SystemBigPoolInformation
Definition: extypes.h:283
@ SystemSpecialPoolInformation
Definition: extypes.h:304
@ SystemSessionProcessesInformation
Definition: extypes.h:270
@ SystemCoverageInformation
Definition: extypes.h:312
@ SystemImageFileExecutionOptionsInformation
Definition: extypes.h:311
@ SystemModuleInformationEx
Definition: extypes.h:294
@ SystemPowerInformationNative
Definition: extypes.h:259
@ SystemMirrorMemoryInformation
Definition: extypes.h:247
@ SystemProcessIdInformation
Definition: extypes.h:305
@ SystemLostDelayedWriteInformation
Definition: extypes.h:282
@ SystemWatchDogTimerHandler
Definition: extypes.h:288
@ SystemBootEnvironmentInformation
Definition: extypes.h:307
@ SystemRecommendedSharedDataAlignment
Definition: extypes.h:275
@ SystemRefTraceInformation
Definition: extypes.h:303
@ SystemVerifierFaultsInformation
Definition: extypes.h:314
@ SystemObsolete0
Definition: extypes.h:249
@ SystemTimeZoneInformation
Definition: extypes.h:310
@ SystemSessionCreate
Definition: extypes.h:264
@ SystemSessionMappedViewInformation
Definition: extypes.h:285
@ SystemEmulationProcessorInformation
Definition: extypes.h:280
@ SystemProcessorPowerInformationEx
Definition: extypes.h:302
@ SystemExtendedProcessInformation
Definition: extypes.h:274
@ SystemThreadPriorityClientIdInformation
Definition: extypes.h:299
@ SystemVerifierInformationEx
Definition: extypes.h:309
@ SystemNumaProcessorMap
Definition: extypes.h:272
@ SystemRangeStartInformation
Definition: extypes.h:267
@ SystemObjectSecurityMode
Definition: extypes.h:287
@ SystemRegisterFirmwareTableInformationHandler
Definition: extypes.h:292
@ SystemLoadGdiDriverInSystemSpaceInformation
Definition: extypes.h:271
@ SystemComPlusPackage
Definition: extypes.h:276
@ SystemSessionPoolTagInformation
Definition: extypes.h:284
@ SystemHypervisorInformation
Definition: extypes.h:308
@ SystemAddVerifier
Definition: extypes.h:269
@ SystemFileCacheInformationEx
Definition: extypes.h:298
@ SystemProcessorIdleCycleTimeInformation
Definition: extypes.h:300
@ SystemErrorPortInformation
Definition: extypes.h:306
@ SystemSessionDetach
Definition: extypes.h:265
@ SystemHotpatchInformation
Definition: extypes.h:286
@ SystemPerformanceTraceInformation
Definition: extypes.h:248
@ SystemNumaAvailableMemory
Definition: extypes.h:277
@ SystemPrefetcherInformation
Definition: extypes.h:273
#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES
Definition: ntimage.h:280
#define NTHALAPI
Definition: ntoskrnl.h:40
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
DWORD LCID
Definition: nls.h:13
signed char SCHAR
Definition: sqltypes.h:14
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68
OUT PVOID IN ULONG SystemInfoBufferSize
Definition: CrossNt.h:79
OUT PVOID SystemInfoBuffer
Definition: CrossNt.h:78
NTHALAPI VOID NTAPI HalDisplayString(PUCHAR String)
#define WIN32_CLIENT_INFO_LENGTH
Definition: ntddk_ex.h:328
struct _KTHREAD_HDR KTHREAD_HDR
struct _GDI_TEB_BATCH * PGDI_TEB_BATCH
struct _KTHREAD_HDR * PKTHREAD_HDR
struct _SYSTEM_BASIC_INFORMATION * PSYSTEM_BASIC_INFORMATION
ULONG NtBuildNumber
Definition: init.c:50
#define TLS_MINIMUM_AVAILABLE
Definition: ntddk_ex.h:236
#define GDI_HANDLE_BUFFER_SIZE
Definition: ntddk_ex.h:234
NTHALAPI VOID NTAPI HalQueryDisplayParameters(OUT PULONG WidthInCharacters, OUT PULONG HeightInLines, OUT PULONG CursorColumn, OUT PULONG CursorRow)
Definition: display.c:43
struct _SYSTEM_BASIC_INFORMATION SYSTEM_BASIC_INFORMATION
struct _LDR_DATA_TABLE_ENTRY * PLDR_DATA_TABLE_ENTRY
struct _LDR_DATA_TABLE_ENTRY LDR_DATA_TABLE_ENTRY
struct _PEB_LDR_DATA * PPEB_LDR_DATA
NTSYSAPI NTSTATUS NTAPI NtQuerySystemInformation(IN SYSTEM_INFORMATION_CLASS SystemInfoClass, OUT PVOID SystemInfoBuffer, IN ULONG SystemInfoBufferSize, OUT PULONG BytesReturned OPTIONAL)
struct _PEB * PPEB
#define STATIC_UNICODE_BUFFER_LENGTH
Definition: ntddk_ex.h:327
struct _GDI_TEB_BATCH GDI_TEB_BATCH
TEB * PTEB
Definition: ntddk_ex.h:388
NTHALAPI VOID NTAPI HalSetDisplayParameters(IN ULONG CursorColumn, IN ULONG CursorRow)
Definition: display.c:57
struct _TEB TEB
struct _PEB_FREE_BLOCK PEB_FREE_BLOCK
struct _PEB_FREE_BLOCK * PPEB_FREE_BLOCK
struct _PEB PEB
struct _PEB_LDR_DATA PEB_LDR_DATA
ULONG Offset
Definition: compat.h:831
WORD e_res2[10]
Definition: ntddk_ex.h:117
DWORD AddressOfNameOrdinals
Definition: compat.h:167
DWORD NumberOfSymbols
Definition: ntddk_ex.h:126
DWORD PointerToSymbolTable
Definition: ntddk_ex.h:125
WORD SizeOfOptionalHeader
Definition: ntddk_ex.h:127
IMAGE_OPTIONAL_HEADER32 OptionalHeader
Definition: ntddk_ex.h:184
IMAGE_FILE_HEADER FileHeader
Definition: ntddk_ex.h:183
WORD MinorOperatingSystemVersion
Definition: ntddk_ex.h:161
WORD MajorOperatingSystemVersion
Definition: ntddk_ex.h:160
DWORD SizeOfUninitializedData
Definition: ntddk_ex.h:148
IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]
Definition: ntddk_ex.h:178
PVOID InitialStack
Definition: ntddk_ex.h:409
DISPATCHER_HEADER Header
Definition: ntddk_ex.h:398
BOOLEAN DebugActive
Definition: ntddk_ex.h:414
BOOLEAN Alerted[MaximumMode]
Definition: ntddk_ex.h:416
UCHAR Iopl
Definition: ntddk_ex.h:417
PVOID TlsArray
Definition: ntddk_ex.h:412
LIST_ENTRY MutantListHead
Definition: ntddk_ex.h:399
BOOLEAN Saturation
Definition: ntddk_ex.h:419
PVOID StackLimit
Definition: ntddk_ex.h:410
PVOID Teb
Definition: ntddk_ex.h:411
SCHAR Priority
Definition: ntddk_ex.h:420
PVOID KernelStack
Definition: ntddk_ex.h:413
UCHAR State
Definition: ntddk_ex.h:415
UCHAR NpxState
Definition: ntddk_ex.h:418
Definition: btrfs_drv.h:1876
UNICODE_STRING FullModuleName
Definition: ntddk_ex.h:205
LIST_ENTRY MemoryOrder
Definition: ntddk_ex.h:200
ULONG TimeStamp
Definition: ntddk_ex.h:217
USHORT LoadCount
Definition: ntddk_ex.h:208
PVOID EntryPoint
Definition: ntddk_ex.h:203
USHORT TlsIndex
Definition: ntddk_ex.h:209
ULONG Flags
Definition: ntddk_ex.h:207
LIST_ENTRY Hash
Definition: ntddk_ex.h:211
PVOID SectionPointer
Definition: ntddk_ex.h:213
PVOID ModuleBaseAddress
Definition: ntddk_ex.h:202
UNICODE_STRING ModuleName
Definition: ntddk_ex.h:206
ULONG ModuleSize
Definition: ntddk_ex.h:204
LIST_ENTRY LoadOrder
Definition: ntddk_ex.h:199
ULONG CheckSum
Definition: btrfs_drv.h:1886
LIST_ENTRY InitializationOrder
Definition: ntddk_ex.h:201
Definition: typedefs.h:120
struct _PEB_FREE_BLOCK * Next
Definition: ntddk_ex.h:230
LIST_ENTRY LoadOrder
Definition: ntddk_ex.h:224
LIST_ENTRY MemoryOrder
Definition: ntddk_ex.h:225
HANDLE SsHandle
Definition: ntddk_ex.h:223
ULONG Length
Definition: ntddk_ex.h:221
LIST_ENTRY InitializationOrder
Definition: ntddk_ex.h:226
BOOLEAN Initialized
Definition: ntddk_ex.h:222
ULONG HeapDeCommitTotalFreeThreshold
Definition: ntddk_ex.h:277
ULONG HeapSegmentCommit
Definition: ntddk_ex.h:276
ULONG ImageSubsystem
Definition: ntddk_ex.h:304
PVOID SubSystemData
Definition: ntddk_ex.h:248
PVOID LoaderLock
Definition: ntddk_ex.h:295
BOOLEAN ReadImageFileExecOptions
Definition: ntddk_ex.h:240
PPEB_LDR_DATA Ldr
Definition: btrfs_drv.h:1912
PVOID ProcessStarterHelper
Definition: ntddk_ex.h:293
PVOID ReadOnlySharedMemoryHeap
Definition: ntddk_ex.h:262
ULONG NumberOfProcessors
Definition: ntddk_ex.h:269
ULONG TlsBitmapBits[2]
Definition: ntddk_ex.h:260
ULONG ImageProcessAffinityMask
Definition: ntddk_ex.h:307
PVOID ImageBaseAddress
Definition: ntddk_ex.h:245
PVOID KernelCallbackTable
Definition: ntddk_ex.h:254
HANDLE EventLogSection
Definition: ntddk_ex.h:255
PVOID ProcessHeap
Definition: ntddk_ex.h:249
PVOID EventLog
Definition: ntddk_ex.h:256
LARGE_INTEGER CriticalSectionTimeout
Definition: ntddk_ex.h:274
PVOID GdiSharedHandleTable
Definition: ntddk_ex.h:292
ULONG MaximumNumberOfHeaps
Definition: ntddk_ex.h:287
PVOID ReadOnlySharedMemoryBase
Definition: ntddk_ex.h:261
ULONG TlsExpansionCounter
Definition: ntddk_ex.h:258
ULONG OSMinorVersion
Definition: ntddk_ex.h:301
PVOID * ProcessHeaps
Definition: ntddk_ex.h:288
PVOID GdiDCAttributeList
Definition: ntddk_ex.h:294
ULONG HeapSegmentReserve
Definition: ntddk_ex.h:275
PVOID AnsiCodePageData
Definition: ntddk_ex.h:264
ULONG NumberOfHeaps
Definition: ntddk_ex.h:286
ULONG ImageSubsystemMinorVersion
Definition: ntddk_ex.h:306
BOOLEAN BeingDebugged
Definition: ntddk_ex.h:241
struct _RTL_USER_PROCESS_PARAMETERS * ProcessParameters
Definition: ntddk_ex.h:247
PVOID FastPebLock
Definition: ntddk_ex.h:250
HANDLE Mutant
Definition: ntddk_ex.h:243
PVOID TlsBitmap
Definition: ntddk_ex.h:259
PVOID * ReadOnlyStaticServerData
Definition: ntddk_ex.h:263
PVOID FastPebLockRoutine
Definition: ntddk_ex.h:251
ULONG OSMajorVersion
Definition: ntddk_ex.h:300
ULONG OSBuildNumber
Definition: ntddk_ex.h:302
PVOID OemCodePageData
Definition: ntddk_ex.h:265
ULONG NtGlobalFlag
Definition: ntddk_ex.h:270
ULONG EnvironmentUpdateCount
Definition: ntddk_ex.h:253
BOOLEAN SpareBool
Definition: ntddk_ex.h:242
BOOLEAN InheritedAddressSpace
Definition: ntddk_ex.h:239
ULONG ImageSubsystemMajorVersion
Definition: ntddk_ex.h:305
ULONG OSPlatformId
Definition: ntddk_ex.h:303
PPEB_FREE_BLOCK FreeList
Definition: ntddk_ex.h:257
PVOID FastPebUnlockRoutine
Definition: ntddk_ex.h:252
ULONG GdiHandleBuffer[GDI_HANDLE_BUFFER_SIZE]
Definition: ntddk_ex.h:308
ULONG HeapDeCommitFreeBlockThreshold
Definition: ntddk_ex.h:278
PVOID UnicodeCaseTableData
Definition: ntddk_ex.h:266
KAFFINITY ActiveProcessorsAffinityMask
Definition: ntddk_ex.h:167
Definition: ntddk_ex.h:75
ULONG Always0
Definition: ntddk_ex.h:77
USHORT ModuleNameOffset
Definition: ntddk_ex.h:83
ULONG Unknown
Definition: ntddk_ex.h:80
ULONG ModuleSize
Definition: ntddk_ex.h:79
CHAR ModuleName[256]
Definition: ntddk_ex.h:84
PVOID ModuleBaseAddress
Definition: ntddk_ex.h:78
USHORT ModuleNameLength
Definition: ntddk_ex.h:82
ULONG ModuleEntryIndex
Definition: ntddk_ex.h:81
ULONG Unused
Definition: ntddk_ex.h:76
SYSTEM_MODULE_ENTRY Module[1]
Definition: ntddk_ex.h:90
Definition: compat.h:836
ULONG Spare3
Definition: compat.h:889
PVOID glTable
Definition: compat.h:872
ULONG gdiPen
Definition: compat.h:859
PVOID EnvironmentPointer
Definition: compat.h:838
PVOID glSection
Definition: compat.h:871
PVOID ReservedForNtRpc
Definition: compat.h:882
ULONG gdiRgn
Definition: compat.h:858
PVOID SystemReserved1[54]
Definition: compat.h:851
WCHAR StaticUnicodeBuffer[261]
Definition: compat.h:877
BYTE SpareBytes1[36]
Definition: compat.h:855
PVOID GdiThreadLocalInfo
Definition: ntddk_ex.h:359
PVOID WOW32Reserved
Definition: compat.h:848
PVOID glCurrentRC
Definition: compat.h:873
PVOID glContext
Definition: compat.h:874
ULONG Win32ClientInfo[31]
Definition: compat.h:847
HANDLE GdiCachedProcessHandle
Definition: compat.h:862
ULONG WaitingOnLoaderLock
Definition: compat.h:892
ULONG FpSoftwareStatusRegister
Definition: compat.h:850
PVOID Instrumentation[16]
Definition: compat.h:885
ULONG Spare2
Definition: compat.h:888
PVOID Win32ThreadInfo
Definition: compat.h:846
PVOID DbgSsReserved[2]
Definition: compat.h:883
PVOID Vdm
Definition: compat.h:881
PVOID Spare1
Definition: compat.h:852
GDI_TEB_BATCH GdiTebBatch
Definition: compat.h:857
LIST_ENTRY TlsLinks
Definition: compat.h:880
ULONG CountOfOwnedCriticalSections
Definition: compat.h:844
ULONG HardErrorsAreDisabled
Definition: ntddk_ex.h:378
PVOID glSectionInfo
Definition: compat.h:870
PVOID glDispatchTable[280]
Definition: compat.h:867
ULONG GdiClientTID
Definition: compat.h:864
ULONG GdiClientPID
Definition: compat.h:863
NT_TIB NtTib
Definition: ntddk_ex.h:332
PVOID glReserved2
Definition: compat.h:869
PVOID ActiveRpcHandle
Definition: compat.h:840
ULONG Spare4
Definition: compat.h:890
PVOID UserReserved[5]
Definition: compat.h:866
PVOID TlsSlots[64]
Definition: compat.h:879
UNICODE_STRING StaticUnicodeString
Definition: compat.h:876
ULONG GdiBatchCount
Definition: compat.h:887
PVOID ThreadLocalStoragePointer
Definition: compat.h:841
ULONG gdiBrush
Definition: compat.h:860
NTSTATUS ExceptionCode
Definition: ntddk_ex.h:348
CLIENT_ID ClientId
Definition: compat.h:839
CLIENT_ID RealClientId
Definition: compat.h:861
ULONG glReserved1[26]
Definition: compat.h:868
PVOID ReservedForOle
Definition: compat.h:891
PPEB ProcessEnvironmentBlock
Definition: ntddk_ex.h:337
PVOID DeallocationStack
Definition: compat.h:878
PVOID SystemReserved2[10]
Definition: compat.h:856
ULONG LastErrorValue
Definition: compat.h:843
ULONG LastStatusValue
Definition: compat.h:875
PVOID WinSockData
Definition: compat.h:886
LCID CurrentLocale
Definition: ntddk_ex.h:344
PVOID CsrClientThread
Definition: compat.h:845
uint32_t * PULONG
Definition: typedefs.h:59
#define NTAPI
Definition: typedefs.h:36
#define IN
Definition: typedefs.h:39
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
#define OUT
Definition: typedefs.h:40
char CCHAR
Definition: typedefs.h:51
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2433
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesReturned
Definition: wdfiotarget.h:1052
@ MaximumMode
Definition: ketypes.h:13
unsigned char UCHAR
Definition: xmlstorage.h:181
__wchar_t WCHAR
Definition: xmlstorage.h:180
char CHAR
Definition: xmlstorage.h:175
unsigned char BYTE
Definition: xxhash.c:193