ReactOS 0.4.15-dev-5666-gc548b97
windbgkd.h
Go to the documentation of this file.
1#ifndef _WINDBGKD_
2#define _WINDBGKD_
3
4//
5// Dependencies
6//
7#include "wdbgexts.h"
8
9//
10// Conversion Macros
11//
12#define COPYSE(p64, p32, f) \
13 p64->f = (ULONG64)(LONG64)(LONG)p32->f
14
15//
16// Packet Size and Control Stream Size
17//
18#define PACKET_MAX_SIZE 4000
19#define DBGKD_MAXSTREAM 16
20
21//
22// Magic Packet IDs
23//
24#define INITIAL_PACKET_ID 0x80800000
25#define SYNC_PACKET_ID 0x00000800
26
27//
28// Magic Packet bytes
29//
30#define BREAKIN_PACKET 0x62626262
31#define BREAKIN_PACKET_BYTE 0x62
32#define PACKET_LEADER 0x30303030
33#define PACKET_LEADER_BYTE 0x30
34#define CONTROL_PACKET_LEADER 0x69696969
35#define CONTROL_PACKET_LEADER_BYTE 0x69
36#define PACKET_TRAILING_BYTE 0xAA
37
38//
39// Packet Types
40//
41#define PACKET_TYPE_UNUSED 0
42#define PACKET_TYPE_KD_STATE_CHANGE32 1
43#define PACKET_TYPE_KD_STATE_MANIPULATE 2
44#define PACKET_TYPE_KD_DEBUG_IO 3
45#define PACKET_TYPE_KD_ACKNOWLEDGE 4
46#define PACKET_TYPE_KD_RESEND 5
47#define PACKET_TYPE_KD_RESET 6
48#define PACKET_TYPE_KD_STATE_CHANGE64 7
49#define PACKET_TYPE_KD_POLL_BREAKIN 8
50#define PACKET_TYPE_KD_TRACE_IO 9
51#define PACKET_TYPE_KD_CONTROL_REQUEST 10
52#define PACKET_TYPE_KD_FILE_IO 11
53#define PACKET_TYPE_MAX 12
54
55//
56// Wait State Change Types
57//
58#define DbgKdMinimumStateChange 0x00003030
59#define DbgKdExceptionStateChange 0x00003030
60#define DbgKdLoadSymbolsStateChange 0x00003031
61#define DbgKdCommandStringStateChange 0x00003032
62#define DbgKdMaximumStateChange 0x00003033
63
64//
65// This is combined with the basic state change code
66// if the state is from an alternate source
67//
68#define DbgKdAlternateStateChange 0x00010000
69
70//
71// Manipulate Types
72//
73#define DbgKdMinimumManipulate 0x00003130
74#define DbgKdReadVirtualMemoryApi 0x00003130
75#define DbgKdWriteVirtualMemoryApi 0x00003131
76#define DbgKdGetContextApi 0x00003132
77#define DbgKdSetContextApi 0x00003133
78#define DbgKdWriteBreakPointApi 0x00003134
79#define DbgKdRestoreBreakPointApi 0x00003135
80#define DbgKdContinueApi 0x00003136
81#define DbgKdReadControlSpaceApi 0x00003137
82#define DbgKdWriteControlSpaceApi 0x00003138
83#define DbgKdReadIoSpaceApi 0x00003139
84#define DbgKdWriteIoSpaceApi 0x0000313A
85#define DbgKdRebootApi 0x0000313B
86#define DbgKdContinueApi2 0x0000313C
87#define DbgKdReadPhysicalMemoryApi 0x0000313D
88#define DbgKdWritePhysicalMemoryApi 0x0000313E
89#define DbgKdQuerySpecialCallsApi 0x0000313F
90#define DbgKdSetSpecialCallApi 0x00003140
91#define DbgKdClearSpecialCallsApi 0x00003141
92#define DbgKdSetInternalBreakPointApi 0x00003142
93#define DbgKdGetInternalBreakPointApi 0x00003143
94#define DbgKdReadIoSpaceExtendedApi 0x00003144
95#define DbgKdWriteIoSpaceExtendedApi 0x00003145
96#define DbgKdGetVersionApi 0x00003146
97#define DbgKdWriteBreakPointExApi 0x00003147
98#define DbgKdRestoreBreakPointExApi 0x00003148
99#define DbgKdCauseBugCheckApi 0x00003149
100#define DbgKdSwitchProcessor 0x00003150
101#define DbgKdPageInApi 0x00003151
102#define DbgKdReadMachineSpecificRegister 0x00003152
103#define DbgKdWriteMachineSpecificRegister 0x00003153
104#define OldVlm1 0x00003154
105#define OldVlm2 0x00003155
106#define DbgKdSearchMemoryApi 0x00003156
107#define DbgKdGetBusDataApi 0x00003157
108#define DbgKdSetBusDataApi 0x00003158
109#define DbgKdCheckLowMemoryApi 0x00003159
110#define DbgKdClearAllInternalBreakpointsApi 0x0000315A
111#define DbgKdFillMemoryApi 0x0000315B
112#define DbgKdQueryMemoryApi 0x0000315C
113#define DbgKdSwitchPartition 0x0000315D
114#define DbgKdWriteCustomBreakpointApi 0x0000315E
115#define DbgKdGetContextExApi 0x0000315F
116#define DbgKdSetContextExApi 0x00003160
117#define DbgKdMaximumManipulate 0x00003161
118
119//
120// Debug I/O Types
121//
122#define DbgKdPrintStringApi 0x00003230
123#define DbgKdGetStringApi 0x00003231
124
125//
126// Trace I/O Types
127//
128#define DbgKdPrintTraceApi 0x00003330
129
130//
131// Control Request Types
132//
133#define DbgKdRequestHardwareBp 0x00004300
134#define DbgKdReleaseHardwareBp 0x00004301
135
136//
137// File I/O Types
138//
139#define DbgKdCreateFileApi 0x00003430
140#define DbgKdReadFileApi 0x00003431
141#define DbgKdWriteFileApi 0x00003432
142#define DbgKdCloseFileApi 0x00003433
143
144//
145// Control Report Flags
146//
147#define REPORT_INCLUDES_SEGS 0x0001
148#define REPORT_STANDARD_CS 0x0002
149
150//
151// Protocol Versions
152//
153#define DBGKD_64BIT_PROTOCOL_VERSION1 5
154#define DBGKD_64BIT_PROTOCOL_VERSION2 6
155
156//
157// Query Memory Address Spaces
158//
159#define DBGKD_QUERY_MEMORY_VIRTUAL 0
160#define DBGKD_QUERY_MEMORY_PROCESS 0
161#define DBGKD_QUERY_MEMORY_SESSION 1
162#define DBGKD_QUERY_MEMORY_KERNEL 2
163
164//
165// Query Memory Flags
166//
167#define DBGKD_QUERY_MEMORY_READ 0x01
168#define DBGKD_QUERY_MEMORY_WRITE 0x02
169#define DBGKD_QUERY_MEMORY_EXECUTE 0x04
170#define DBGKD_QUERY_MEMORY_FIXED 0x08
171
172//
173// Internal Breakpoint Flags
174//
175#define DBGKD_INTERNAL_BP_FLAG_COUNTONLY 0x01
176#define DBGKD_INTERNAL_BP_FLAG_INVALID 0x02
177#define DBGKD_INTERNAL_BP_FLAG_SUSPENDED 0x04
178#define DBGKD_INTERNAL_BP_FLAG_DYING 0x08
179
180//
181// Fill Memory Flags
182//
183#define DBGKD_FILL_MEMORY_VIRTUAL 0x01
184#define DBGKD_FILL_MEMORY_PHYSICAL 0x02
185
186//
187// Physical Memory Caching Flags
188//
189#define DBGKD_CACHING_DEFAULT 0
190#define DBGKD_CACHING_CACHED 1
191#define DBGKD_CACHING_UNCACHED 2
192#define DBGKD_CACHING_WRITE_COMBINED 3
193
194//
195// Partition Switch Flags
196//
197#define DBGKD_PARTITION_DEFAULT 0x00
198#define DBGKD_PARTITION_ALTERNATE 0x01
199
200//
201// AMD64 Control Space types
202//
203#define AMD64_DEBUG_CONTROL_SPACE_KPCR 0
204#define AMD64_DEBUG_CONTROL_SPACE_KPRCB 1
205#define AMD64_DEBUG_CONTROL_SPACE_KSPECIAL 2
206#define AMD64_DEBUG_CONTROL_SPACE_KTHREAD 3
207
208
209//
210// KD Packet Structure
211//
212typedef struct _KD_PACKET
213{
220
221//
222// KD Context
223//
224typedef struct _KD_CONTEXT
225{
229
230//
231// Control Sets for Supported Architectures
232//
233#include <pshpack4.h>
235{
241
243{
246
248{
253
255{
261
263{
268
270{
275
277{
278 union
279 {
285 };
287#include <poppack.h>
288
289#if defined(_M_IX86)
290typedef X86_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
291#elif defined(_M_AMD64)
292typedef AMD64_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
293#elif defined(_M_ARM)
294typedef ARM_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
295#elif defined(_M_ARM64)
296typedef ARM64_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
297#else
298#error Unsupported Architecture
299#endif
300
301//
302// DBGKM Structure for Exceptions
303//
304typedef struct _DBGKM_EXCEPTION32
305{
309
310typedef struct _DBGKM_EXCEPTION64
311{
315
316//
317// DBGKD Structure for State Change
318//
320{
332
334{
338
340{
344
346{
358
360{
365
367{
373
375{
376 union
377 {
384 };
386
387#if defined(_M_IX86)
388typedef X86_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
389#elif defined(_M_AMD64)
390typedef AMD64_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
391#elif defined(_M_ARM)
392typedef ARM_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
393#elif defined(_M_ARM64)
394typedef ARM64_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
395#else
396#error Unsupported Architecture
397#endif
398
399//
400// DBGKD Structure for Debug I/O Type Print String
401//
403{
406
407//
408// DBGKD Structure for Debug I/O Type Get String
409//
410typedef struct _DBGKD_GET_STRING
411{
415
416//
417// DBGKD Structure for Debug I/O
418//
419typedef struct _DBGKD_DEBUG_IO
420{
424 union
425 {
428 } u;
430
431//
432// DBGkD Structure for Command String
433//
435{
440
441//
442// DBGKD Structure for Load Symbols
443//
445{
453
455{
463
464//
465// DBGKD Structure for Wait State Change
466//
467
469{
476 union
477 {
480 } u;
482
484{
491 union
492 {
495 } u;
497
499{
506 union
507 {
511 } u;
512 union
513 {
514 DBGKD_CONTROL_REPORT ControlReport;
516 };
518
519//
520// DBGKD Manipulate Structures
521//
523{
528
530{
535
537{
542
544{
549
550typedef struct _DBGKD_GET_CONTEXT
551{
554
555typedef struct _DBGKD_SET_CONTEXT
556{
559
561{
565
567{
571
573{
576
577typedef struct _DBGKD_CONTINUE
578{
581
582#include <pshpack4.h>
583typedef struct _DBGKD_CONTINUE2
584{
586 union
587 {
588 DBGKD_CONTROL_SET ControlSet;
590 };
592#include <poppack.h>
593
595{
600
602{
607
609{
617
619{
627
629{
634
636{
639
641{
644
646{
649
651{
655
657{
661
663{
672
674{
683
685{
689
691{
692 union
693 {
696 };
700
702{
709
710typedef struct _DBGKD_FILL_MEMORY
711{
717
719{
725
727{
730
731typedef struct _DBGKD_CONTEXT_EX
732{
737
739{
746
747//
748// DBGKD Structure for Manipulate
749//
751{
756 union
757 {
782 } u;
784
786{
791 union
792 {
817 } u;
819
820//
821// File I/O Structure
822//
823typedef struct _DBGKD_CREATE_FILE
824{
833
834typedef struct _DBGKD_READ_FILE
835{
840
841typedef struct _DBGKD_WRITE_FILE
842{
847
848typedef struct _DBGKD_CLOSE_FILE
849{
852
853typedef struct _DBGKD_FILE_IO
854{
857 union
858 {
864 } u;
866
867
868//
869// Control Request Structure
870//
872{
876
878{
882
884{
886 union
887 {
890 } u;
892
893//
894// Trace I/O Structure
895//
896typedef struct _DBGKD_PRINT_TRACE
897{
900
901typedef struct _DBGKD_TRACE_IO
902{
906 union
907 {
910 } u;
912
913static
914__inline
915VOID
916NTAPI
919{
920 ULONG i;
921
922 Ex64->ExceptionCode = Ex32->ExceptionCode;
923 Ex64->ExceptionFlags = Ex32->ExceptionFlags;
924 Ex64->ExceptionRecord = Ex32->ExceptionRecord;
925 COPYSE(Ex64,Ex32,ExceptionAddress);
926 Ex64->NumberParameters = Ex32->NumberParameters;
927
928 for (i = 0; i < EXCEPTION_MAXIMUM_PARAMETERS; i++)
929 {
930 COPYSE(Ex64,Ex32,ExceptionInformation[i]);
931 }
932}
933
934#endif
unsigned char BOOLEAN
LONG NTSTATUS
Definition: precomp.h:26
#define EXCEPTION_MAXIMUM_PARAMETERS
Definition: compat.h:206
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 const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
unsigned int ULONG
Definition: retypes.h:1
unsigned __int64 ULONG64
Definition: imports.h:198
unsigned short USHORT
Definition: pedump.c:61
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:336
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:352
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:371
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:363
ARM64_DBGKD_CONTROL_REPORT ARM64ControlReport
Definition: windbgkd.h:383
ALPHA_DBGKD_CONTROL_REPORT AlphaControlReport
Definition: windbgkd.h:379
AMD64_DBGKD_CONTROL_REPORT Amd64ControlReport
Definition: windbgkd.h:381
IA64_DBGKD_CONTROL_REPORT IA64ControlReport
Definition: windbgkd.h:380
ARM_DBGKD_CONTROL_REPORT ARMControlReport
Definition: windbgkd.h:382
X86_DBGKD_CONTROL_REPORT X86ControlReport
Definition: windbgkd.h:378
IA64_DBGKD_CONTROL_SET IA64ControlSet
Definition: windbgkd.h:282
AMD64_DBGKD_CONTROL_SET Amd64ControlSet
Definition: windbgkd.h:283
ALPHA_DBGKD_CONTROL_SET AlphaControlSet
Definition: windbgkd.h:281
ARM_DBGKD_CONTROL_SET ARMControlSet
Definition: windbgkd.h:284
X86_DBGKD_CONTROL_SET X86ControlSet
Definition: windbgkd.h:280
union _DBGKD_ANY_WAIT_STATE_CHANGE::@3517 u
DBGKD_COMMAND_STRING CommandString
Definition: windbgkd.h:510
DBGKD_CONTROL_REPORT ControlReport
Definition: windbgkd.h:514
DBGKM_EXCEPTION64 Exception
Definition: windbgkd.h:508
DBGKD_ANY_CONTROL_REPORT AnyControlReport
Definition: windbgkd.h:515
DBGKD_LOAD_SYMBOLS64 LoadSymbols
Definition: windbgkd.h:509
NTSTATUS ContinueStatus
Definition: windbgkd.h:687
ULONG64 Handle
Definition: windbgkd.h:850
ULONG64 Reserved2[7]
Definition: windbgkd.h:438
DBGKD_CONTROL_SET ControlSet
Definition: windbgkd.h:588
NTSTATUS ContinueStatus
Definition: windbgkd.h:585
DBGKD_ANY_CONTROL_SET AnyControlSet
Definition: windbgkd.h:589
NTSTATUS ContinueStatus
Definition: windbgkd.h:579
DBGKD_RELEASE_BREAKPOINT ReleaseBreakpoint
Definition: windbgkd.h:889
union _DBGKD_CONTROL_REQUEST::@3527 u
DBGKD_REQUEST_BREAKPOINT RequestBreakpoint
Definition: windbgkd.h:888
ULONG CreateDisposition
Definition: windbgkd.h:828
ULONG FileAttributes
Definition: windbgkd.h:826
DBGKD_GET_STRING GetString
Definition: windbgkd.h:427
union _DBGKD_DEBUG_IO::@3514 u
ULONG ApiNumber
Definition: windbgkd.h:421
USHORT Processor
Definition: windbgkd.h:423
USHORT ProcessorLevel
Definition: windbgkd.h:422
DBGKD_PRINT_STRING PrintString
Definition: windbgkd.h:426
ULONG Status
Definition: windbgkd.h:856
DBGKD_READ_FILE ReadFile
Definition: windbgkd.h:861
DBGKD_CLOSE_FILE CloseFile
Definition: windbgkd.h:863
DBGKD_CREATE_FILE CreateFile
Definition: windbgkd.h:860
DBGKD_WRITE_FILE WriteFile
Definition: windbgkd.h:862
ULONG ApiNumber
Definition: windbgkd.h:855
union _DBGKD_FILE_IO::@3526 u
ULONG64 ReserveSpace[7]
Definition: windbgkd.h:859
USHORT PatternLength
Definition: windbgkd.h:715
ULONG LengthOfStringRead
Definition: windbgkd.h:413
ULONG LengthOfPromptString
Definition: windbgkd.h:412
union _DBGKD_MANIPULATE_STATE32::@3524 u
DBGKD_RESTORE_BREAKPOINT RestoreBreakPoint
Definition: windbgkd.h:765
DBGKD_READ_MEMORY64 ReadMemory64
Definition: windbgkd.h:760
DBGKD_CONTINUE Continue
Definition: windbgkd.h:766
DBGKD_WRITE_MEMORY64 WriteMemory64
Definition: windbgkd.h:761
DBGKD_WRITE_MEMORY32 WriteMemory
Definition: windbgkd.h:759
DBGKD_READ_WRITE_IO_EXTENDED32 ReadWriteIoExtended
Definition: windbgkd.h:769
DBGKD_SWITCH_PARTITION SwitchPartition
Definition: windbgkd.h:781
DBGKD_SEARCH_MEMORY SearchMemory
Definition: windbgkd.h:777
DBGKD_READ_WRITE_IO32 ReadWriteIo
Definition: windbgkd.h:768
DBGKD_GET_VERSION32 GetVersion32
Definition: windbgkd.h:774
DBGKD_QUERY_MEMORY QueryMemory
Definition: windbgkd.h:780
DBGKD_GET_CONTEXT GetContext
Definition: windbgkd.h:762
DBGKD_BREAKPOINTEX BreakPointEx
Definition: windbgkd.h:775
DBGKD_CONTINUE2 Continue2
Definition: windbgkd.h:767
DBGKD_READ_MEMORY32 ReadMemory
Definition: windbgkd.h:758
DBGKD_FILL_MEMORY FillMemory
Definition: windbgkd.h:779
DBGKD_SET_INTERNAL_BREAKPOINT32 SetInternalBreakpoint
Definition: windbgkd.h:772
DBGKD_QUERY_SPECIAL_CALLS QuerySpecialCalls
Definition: windbgkd.h:770
DBGKD_WRITE_BREAKPOINT32 WriteBreakPoint
Definition: windbgkd.h:764
DBGKD_READ_WRITE_MSR ReadWriteMsr
Definition: windbgkd.h:776
DBGKD_SET_CONTEXT SetContext
Definition: windbgkd.h:763
DBGKD_SET_SPECIAL_CALL32 SetSpecialCall
Definition: windbgkd.h:771
DBGKD_GET_INTERNAL_BREAKPOINT32 GetInternalBreakpoint
Definition: windbgkd.h:773
DBGKD_GET_SET_BUS_DATA GetSetBusData
Definition: windbgkd.h:778
DBGKD_BREAKPOINTEX BreakPointEx
Definition: windbgkd.h:808
DBGKD_SET_CONTEXT SetContext
Definition: windbgkd.h:796
DBGKD_QUERY_SPECIAL_CALLS QuerySpecialCalls
Definition: windbgkd.h:803
DBGKD_RESTORE_BREAKPOINT RestoreBreakPoint
Definition: windbgkd.h:798
DBGKD_WRITE_CUSTOM_BREAKPOINT WriteCustomBreakpoint
Definition: windbgkd.h:815
DBGKD_GET_SET_BUS_DATA GetSetBusData
Definition: windbgkd.h:811
DBGKD_SWITCH_PARTITION SwitchPartition
Definition: windbgkd.h:814
DBGKD_READ_WRITE_MSR ReadWriteMsr
Definition: windbgkd.h:809
DBGKD_WRITE_MEMORY64 WriteMemory
Definition: windbgkd.h:794
DBGKD_READ_WRITE_IO_EXTENDED64 ReadWriteIoExtended
Definition: windbgkd.h:802
DBGKD_READ_WRITE_IO64 ReadWriteIo
Definition: windbgkd.h:801
DBGKD_GET_CONTEXT GetContext
Definition: windbgkd.h:795
DBGKD_SET_SPECIAL_CALL64 SetSpecialCall
Definition: windbgkd.h:804
DBGKD_READ_MEMORY64 ReadMemory
Definition: windbgkd.h:793
DBGKD_CONTINUE2 Continue2
Definition: windbgkd.h:800
DBGKD_GET_VERSION64 GetVersion64
Definition: windbgkd.h:807
union _DBGKD_MANIPULATE_STATE64::@3525 u
DBGKD_SEARCH_MEMORY SearchMemory
Definition: windbgkd.h:810
DBGKD_WRITE_BREAKPOINT64 WriteBreakPoint
Definition: windbgkd.h:797
DBGKD_GET_INTERNAL_BREAKPOINT64 GetInternalBreakpoint
Definition: windbgkd.h:806
DBGKD_QUERY_MEMORY QueryMemory
Definition: windbgkd.h:813
DBGKD_CONTINUE Continue
Definition: windbgkd.h:799
DBGKD_SET_INTERNAL_BREAKPOINT64 SetInternalBreakpoint
Definition: windbgkd.h:805
DBGKD_FILL_MEMORY FillMemory
Definition: windbgkd.h:812
DBGKD_CONTEXT_EX ContextEx
Definition: windbgkd.h:816
ULONG64 Offset
Definition: windbgkd.h:837
ULONG64 Handle
Definition: windbgkd.h:836
ULONG64 TargetBaseAddress
Definition: windbgkd.h:531
ULONG64 SearchLength
Definition: windbgkd.h:697
ULONG64 SearchAddress
Definition: windbgkd.h:694
ULONG64 FoundAddress
Definition: windbgkd.h:695
USHORT Processor
Definition: windbgkd.h:905
ULONG ApiNumber
Definition: windbgkd.h:903
USHORT ProcessorLevel
Definition: windbgkd.h:904
union _DBGKD_TRACE_IO::@3528 u
ULONG64 ReserveSpace[7]
Definition: windbgkd.h:908
DBGKD_PRINT_TRACE PrintTrace
Definition: windbgkd.h:909
union _DBGKD_WAIT_STATE_CHANGE32::@3515 u
DBGKM_EXCEPTION32 Exception
Definition: windbgkd.h:478
DBGKD_LOAD_SYMBOLS32 LoadSymbols
Definition: windbgkd.h:479
union _DBGKD_WAIT_STATE_CHANGE64::@3516 u
DBGKM_EXCEPTION64 Exception
Definition: windbgkd.h:493
DBGKD_LOAD_SYMBOLS64 LoadSymbols
Definition: windbgkd.h:494
ULONG64 Offset
Definition: windbgkd.h:844
ULONG64 Handle
Definition: windbgkd.h:843
ULONG64 TargetBaseAddress
Definition: windbgkd.h:545
EXCEPTION_RECORD32 ExceptionRecord
Definition: windbgkd.h:306
EXCEPTION_RECORD64 ExceptionRecord
Definition: windbgkd.h:312
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:342
ULONG64 CurrentSymbolStart
Definition: windbgkd.h:250
ULONG KdpDefaultRetries
Definition: windbgkd.h:226
BOOLEAN KdpControlCPending
Definition: windbgkd.h:227
USHORT PacketType
Definition: windbgkd.h:215
ULONG PacketLeader
Definition: windbgkd.h:214
USHORT ByteCount
Definition: windbgkd.h:216
ULONG PacketId
Definition: windbgkd.h:217
ULONG Checksum
Definition: windbgkd.h:218
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:325
#define NTAPI
Definition: typedefs.h:36
#define IN
Definition: typedefs.h:39
#define OUT
Definition: typedefs.h:40
struct _DBGKD_WRITE_CUSTOM_BREAKPOINT DBGKD_WRITE_CUSTOM_BREAKPOINT
struct _DBGKD_READ_WRITE_IO32 DBGKD_READ_WRITE_IO32
struct _DBGKD_LOAD_SYMBOLS32 DBGKD_LOAD_SYMBOLS32
struct _DBGKD_READ_WRITE_IO_EXTENDED64 * PDBGKD_READ_WRITE_IO_EXTENDED64
struct _DBGKD_CONTEXT_EX DBGKD_CONTEXT_EX
struct _DBGKD_GET_SET_BUS_DATA * PDBGKD_GET_SET_BUS_DATA
struct _DBGKD_PRINT_STRING DBGKD_PRINT_STRING
struct _AMD64_DBGKD_CONTROL_REPORT * PAMD64_DBGKD_CONTROL_REPORT
struct _DBGKD_READ_WRITE_IO64 DBGKD_READ_WRITE_IO64
struct _DBGKD_FILL_MEMORY * PDBGKD_FILL_MEMORY
struct _DBGKD_GET_CONTEXT * PDBGKD_GET_CONTEXT
struct _DBGKD_SET_SPECIAL_CALL64 DBGKD_SET_SPECIAL_CALL64
struct _DBGKD_SEARCH_MEMORY DBGKD_SEARCH_MEMORY
struct _AMD64_DBGKD_CONTROL_REPORT AMD64_DBGKD_CONTROL_REPORT
struct _DBGKD_WRITE_BREAKPOINT64 * PDBGKD_WRITE_BREAKPOINT64
struct _DBGKD_FILE_IO DBGKD_FILE_IO
struct _DBGKD_CONTEXT_EX * PDBGKD_CONTEXT_EX
struct _DBGKD_READ_FILE * PDBGKD_READ_FILE
struct _KD_CONTEXT * PKD_CONTEXT
struct _DBGKD_WAIT_STATE_CHANGE32 * PDBGKD_WAIT_STATE_CHANGE32
struct _DBGKD_READ_WRITE_IO_EXTENDED64 DBGKD_READ_WRITE_IO_EXTENDED64
struct _DBGKD_CONTINUE * PDBGKD_CONTINUE
struct _DBGKD_READ_WRITE_MSR DBGKD_READ_WRITE_MSR
struct _DBGKD_WAIT_STATE_CHANGE64 DBGKD_WAIT_STATE_CHANGE64
struct _DBGKD_READ_MEMORY64 * PDBGKD_READ_MEMORY64
struct _DBGKD_LOAD_SYMBOLS64 DBGKD_LOAD_SYMBOLS64
struct _DBGKD_READ_FILE DBGKD_READ_FILE
struct _DBGKD_CONTROL_REQUEST DBGKD_CONTROL_REQUEST
struct _DBGKD_SET_SPECIAL_CALL64 * PDBGKD_SET_SPECIAL_CALL64
struct _DBGKD_WRITE_MEMORY32 * PDBGKD_WRITE_MEMORY32
struct _DBGKD_ANY_WAIT_STATE_CHANGE DBGKD_ANY_WAIT_STATE_CHANGE
struct _AMD64_DBGKD_CONTROL_SET * PAMD64_DBGKD_CONTROL_SET
struct _DBGKD_RESTORE_BREAKPOINT * PDBGKD_RESTORE_BREAKPOINT
struct _DBGKD_SET_CONTEXT DBGKD_SET_CONTEXT
struct _DBGKD_BREAKPOINTEX DBGKD_BREAKPOINTEX
struct _DBGKD_LOAD_SYMBOLS32 * PDBGKD_LOAD_SYMBOLS32
struct _DBGKD_RESTORE_BREAKPOINT DBGKD_RESTORE_BREAKPOINT
struct _DBGKD_CONTROL_REQUEST * PDBGKD_CONTROL_REQUEST
struct _DBGKD_SET_SPECIAL_CALL32 * PDBGKD_SET_SPECIAL_CALL32
struct _DBGKM_EXCEPTION64 * PDBGKM_EXCEPTION64
struct _DBGKD_REQUEST_BREAKPOINT * PDBGKD_REQUEST_BREAKPOINT
struct _ALPHA_DBGKD_CONTROL_REPORT ALPHA_DBGKD_CONTROL_REPORT
struct _DBGKD_WRITE_BREAKPOINT32 DBGKD_WRITE_BREAKPOINT32
struct _DBGKD_ANY_CONTROL_SET DBGKD_ANY_CONTROL_SET
struct _DBGKD_FILL_MEMORY DBGKD_FILL_MEMORY
struct _DBGKD_CREATE_FILE * PDBGKD_CREATE_FILE
struct _X86_DBGKD_CONTROL_REPORT * PX86_DBGKD_CONTROL_REPORT
struct _DBGKD_GET_CONTEXT DBGKD_GET_CONTEXT
struct _DBGKD_GET_SET_BUS_DATA DBGKD_GET_SET_BUS_DATA
struct _ARM_DBGKD_CONTROL_SET * PARM_DBGKD_CONTROL_SET
struct _DBGKD_SWITCH_PARTITION DBGKD_SWITCH_PARTITION
struct _X86_DBGKD_CONTROL_SET * PX86_DBGKD_CONTROL_SET
struct _DBGKD_ANY_WAIT_STATE_CHANGE * PDBGKD_ANY_WAIT_STATE_CHANGE
struct _DBGKD_SET_INTERNAL_BREAKPOINT32 DBGKD_SET_INTERNAL_BREAKPOINT32
struct _ARM64_DBGKD_CONTROL_REPORT * PARM64_DBGKD_CONTROL_REPORT
struct _DBGKD_WRITE_MEMORY64 DBGKD_WRITE_MEMORY64
struct _DBGKD_SET_INTERNAL_BREAKPOINT64 * PDBGKD_SET_INTERNAL_BREAKPOINT64
struct _DBGKD_TRACE_IO DBGKD_TRACE_IO
struct _DBGKD_READ_WRITE_MSR * PDBGKD_READ_WRITE_MSR
struct _DBGKD_QUERY_MEMORY DBGKD_QUERY_MEMORY
struct _AMD64_DBGKD_CONTROL_SET AMD64_DBGKD_CONTROL_SET
struct _IA64_DBGKD_CONTROL_SET * PIA64_DBGKD_CONTROL_SET
struct _ALPHA_DBGKD_CONTROL_REPORT * PALPHA_DBGKD_CONTROL_REPORT
struct _DBGKD_DEBUG_IO DBGKD_DEBUG_IO
struct _DBGKM_EXCEPTION64 DBGKM_EXCEPTION64
struct _DBGKD_MANIPULATE_STATE64 * PDBGKD_MANIPULATE_STATE64
struct _DBGKD_WRITE_MEMORY32 DBGKD_WRITE_MEMORY32
struct _DBGKD_GET_INTERNAL_BREAKPOINT64 * PDBGKD_GET_INTERNAL_BREAKPOINT64
struct _ARM64_DBGKD_CONTROL_REPORT ARM64_DBGKD_CONTROL_REPORT
struct _DBGKD_ANY_CONTROL_SET * PDBGKD_ANY_CONTROL_SET
struct _DBGKD_WRITE_BREAKPOINT64 DBGKD_WRITE_BREAKPOINT64
struct _DBGKD_BREAKPOINTEX * PDBGKD_BREAKPOINTEX
struct _DBGKD_COMMAND_STRING DBGKD_COMMAND_STRING
struct _ARM_DBGKD_CONTROL_REPORT * PARM_DBGKD_CONTROL_REPORT
struct _X86_DBGKD_CONTROL_REPORT X86_DBGKD_CONTROL_REPORT
struct _ALPHA_DBGKD_CONTROL_SET * PALPHA_DBGKD_CONTROL_SET
struct _X86_DBGKD_CONTROL_SET X86_DBGKD_CONTROL_SET
struct _DBGKD_CONTINUE2 DBGKD_CONTINUE2
struct _ARM64_DBGKD_CONTROL_SET ARM64_DBGKD_CONTROL_SET
struct _DBGKD_GET_STRING DBGKD_GET_STRING
struct _DBGKD_QUERY_SPECIAL_CALLS DBGKD_QUERY_SPECIAL_CALLS
struct _DBGKD_RELEASE_BREAKPOINT DBGKD_RELEASE_BREAKPOINT
struct _DBGKD_SET_INTERNAL_BREAKPOINT64 DBGKD_SET_INTERNAL_BREAKPOINT64
struct _DBGKD_TRACE_IO * PDBGKD_TRACE_IO
struct _DBGKD_CLOSE_FILE * PDBGKD_CLOSE_FILE
struct _DBGKD_CREATE_FILE DBGKD_CREATE_FILE
struct _DBGKD_WRITE_FILE DBGKD_WRITE_FILE
struct _DBGKD_QUERY_SPECIAL_CALLS * PDBGKD_QUERY_SPECIAL_CALLS
struct _DBGKD_WRITE_CUSTOM_BREAKPOINT * PDBGKD_WRITE_CUSTOM_BREAKPOINT
struct _DBGKD_READ_MEMORY32 DBGKD_READ_MEMORY32
struct _DBGKD_SET_INTERNAL_BREAKPOINT32 * PDBGKD_SET_INTERNAL_BREAKPOINT32
struct _IA64_DBGKD_CONTROL_REPORT * PIA64_DBGKD_CONTROL_REPORT
struct _DBGKD_GET_INTERNAL_BREAKPOINT32 * PDBGKD_GET_INTERNAL_BREAKPOINT32
struct _DBGKD_READ_MEMORY32 * PDBGKD_READ_MEMORY32
struct _DBGKD_SET_CONTEXT * PDBGKD_SET_CONTEXT
struct _ALPHA_DBGKD_CONTROL_SET ALPHA_DBGKD_CONTROL_SET
struct _DBGKD_GET_INTERNAL_BREAKPOINT32 DBGKD_GET_INTERNAL_BREAKPOINT32
struct _DBGKD_ANY_CONTROL_REPORT DBGKD_ANY_CONTROL_REPORT
struct _DBGKD_SET_SPECIAL_CALL32 DBGKD_SET_SPECIAL_CALL32
struct _DBGKD_DEBUG_IO * PDBGKD_DEBUG_IO
struct _DBGKD_SEARCH_MEMORY * PDBGKD_SEARCH_MEMORY
struct _DBGKD_MANIPULATE_STATE32 * PDBGKD_MANIPULATE_STATE32
struct _ARM64_DBGKD_CONTROL_SET * PARM64_DBGKD_CONTROL_SET
struct _KD_CONTEXT KD_CONTEXT
static __inline VOID NTAPI ExceptionRecord32To64(IN PEXCEPTION_RECORD32 Ex32, OUT PEXCEPTION_RECORD64 Ex64)
Definition: windbgkd.h:917
struct _DBGKD_QUERY_MEMORY * PDBGKD_QUERY_MEMORY
struct _DBGKD_GET_STRING * PDBGKD_GET_STRING
#define COPYSE(p64, p32, f)
Definition: windbgkd.h:12
struct _DBGKD_PRINT_STRING * PDBGKD_PRINT_STRING
struct _KD_PACKET * PKD_PACKET
struct _DBGKD_WAIT_STATE_CHANGE64 * PDBGKD_WAIT_STATE_CHANGE64
struct _DBGKD_CONTINUE DBGKD_CONTINUE
struct _DBGKD_LOAD_SYMBOLS64 * PDBGKD_LOAD_SYMBOLS64
#define DBGKD_MAXSTREAM
Definition: windbgkd.h:19
struct _DBGKD_WRITE_FILE * PDBGKD_WRITE_FILE
struct _DBGKD_REQUEST_BREAKPOINT DBGKD_REQUEST_BREAKPOINT
struct _DBGKD_CLOSE_FILE DBGKD_CLOSE_FILE
struct _DBGKD_COMMAND_STRING * PDBGKD_COMMAND_STRING
struct _DBGKD_WAIT_STATE_CHANGE32 DBGKD_WAIT_STATE_CHANGE32
struct _IA64_DBGKD_CONTROL_REPORT IA64_DBGKD_CONTROL_REPORT
struct _DBGKD_PRINT_TRACE * PDBGKD_PRINT_TRACE
struct _DBGKD_WRITE_BREAKPOINT32 * PDBGKD_WRITE_BREAKPOINT32
struct _DBGKD_READ_WRITE_IO32 * PDBGKD_READ_WRITE_IO32
struct _ARM_DBGKD_CONTROL_REPORT ARM_DBGKD_CONTROL_REPORT
struct _KD_PACKET KD_PACKET
struct _DBGKM_EXCEPTION32 DBGKM_EXCEPTION32
struct _DBGKD_READ_MEMORY64 DBGKD_READ_MEMORY64
struct _DBGKD_GET_INTERNAL_BREAKPOINT64 DBGKD_GET_INTERNAL_BREAKPOINT64
struct _DBGKD_READ_WRITE_IO64 * PDBGKD_READ_WRITE_IO64
struct _DBGKD_CONTINUE2 * PDBGKD_CONTINUE2
struct _DBGKD_MANIPULATE_STATE32 DBGKD_MANIPULATE_STATE32
struct _DBGKD_PRINT_TRACE DBGKD_PRINT_TRACE
struct _DBGKD_READ_WRITE_IO_EXTENDED32 DBGKD_READ_WRITE_IO_EXTENDED32
struct _DBGKM_EXCEPTION32 * PDBGKM_EXCEPTION32
struct _DBGKD_RELEASE_BREAKPOINT * PDBGKD_RELEASE_BREAKPOINT
struct _DBGKD_MANIPULATE_STATE64 DBGKD_MANIPULATE_STATE64
struct _DBGKD_FILE_IO * PDBGKD_FILE_IO
struct _ARM_DBGKD_CONTROL_SET ARM_DBGKD_CONTROL_SET
struct _IA64_DBGKD_CONTROL_SET IA64_DBGKD_CONTROL_SET
struct _DBGKD_ANY_CONTROL_REPORT * PDBGKD_ANY_CONTROL_REPORT
struct _DBGKD_READ_WRITE_IO_EXTENDED32 * PDBGKD_READ_WRITE_IO_EXTENDED32
struct _DBGKD_WRITE_MEMORY64 * PDBGKD_WRITE_MEMORY64
unsigned char UCHAR
Definition: xmlstorage.h:181