ReactOS  0.4.13-dev-443-g10f00f8
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 //
212 typedef struct _KD_PACKET
213 {
220 
221 //
222 // KD Context
223 //
224 typedef 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 {
271  union
272  {
278  };
280 #include <poppack.h>
281 
282 #if defined(_M_IX86)
283 typedef X86_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
284 #elif defined(_M_AMD64)
285 typedef AMD64_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
286 #elif defined(_M_ARM)
287 typedef ARM_DBGKD_CONTROL_SET DBGKD_CONTROL_SET, *PDBGKD_CONTROL_SET;
288 #else
289 #error Unsupported Architecture
290 #endif
291 
292 //
293 // DBGKM Structure for Exceptions
294 //
295 typedef struct _DBGKM_EXCEPTION32
296 {
300 
301 typedef struct _DBGKM_EXCEPTION64
302 {
306 
307 //
308 // DBGKD Structure for State Change
309 //
311 {
323 
325 {
329 
331 {
335 
337 {
349 
351 {
356 
358 {
359  union
360  {
366  };
368 
369 #if defined(_M_IX86)
370 typedef X86_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
371 #elif defined(_M_AMD64)
372 typedef AMD64_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
373 #elif defined(_M_ARM)
374 typedef ARM_DBGKD_CONTROL_REPORT DBGKD_CONTROL_REPORT, *PDBGKD_CONTROL_REPORT;
375 #else
376 #error Unsupported Architecture
377 #endif
378 
379 //
380 // DBGKD Structure for Debug I/O Type Print String
381 //
382 typedef struct _DBGKD_PRINT_STRING
383 {
386 
387 //
388 // DBGKD Structure for Debug I/O Type Get String
389 //
390 typedef struct _DBGKD_GET_STRING
391 {
395 
396 //
397 // DBGKD Structure for Debug I/O
398 //
399 typedef struct _DBGKD_DEBUG_IO
400 {
404  union
405  {
408  } u;
410 
411 //
412 // DBGkD Structure for Command String
413 //
414 typedef struct _DBGKD_COMMAND_STRING
415 {
420 
421 //
422 // DBGKD Structure for Load Symbols
423 //
424 typedef struct _DBGKD_LOAD_SYMBOLS32
425 {
433 
434 typedef struct _DBGKD_LOAD_SYMBOLS64
435 {
443 
444 //
445 // DBGKD Structure for Wait State Change
446 //
447 
449 {
456  union
457  {
460  } u;
462 
464 {
471  union
472  {
475  } u;
477 
479 {
486  union
487  {
491  } u;
492  union
493  {
494  DBGKD_CONTROL_REPORT ControlReport;
496  };
498 
499 //
500 // DBGKD Manipulate Structures
501 //
502 typedef struct _DBGKD_READ_MEMORY32
503 {
508 
509 typedef struct _DBGKD_READ_MEMORY64
510 {
515 
516 typedef struct _DBGKD_WRITE_MEMORY32
517 {
522 
523 typedef struct _DBGKD_WRITE_MEMORY64
524 {
529 
530 typedef struct _DBGKD_GET_CONTEXT
531 {
534 
535 typedef struct _DBGKD_SET_CONTEXT
536 {
539 
541 {
545 
547 {
551 
553 {
556 
557 typedef struct _DBGKD_CONTINUE
558 {
561 
562 #include <pshpack4.h>
563 typedef struct _DBGKD_CONTINUE2
564 {
566  union
567  {
568  DBGKD_CONTROL_SET ControlSet;
570  };
572 #include <poppack.h>
573 
575 {
580 
582 {
587 
589 {
597 
599 {
607 
608 typedef struct _DBGKD_READ_WRITE_MSR
609 {
614 
616 {
619 
621 {
624 
626 {
629 
631 {
635 
637 {
641 
643 {
652 
654 {
663 
664 typedef struct _DBGKD_BREAKPOINTEX
665 {
669 
670 typedef struct _DBGKD_SEARCH_MEMORY
671 {
672  union
673  {
676  };
680 
682 {
689 
690 typedef struct _DBGKD_FILL_MEMORY
691 {
697 
698 typedef struct _DBGKD_QUERY_MEMORY
699 {
705 
707 {
710 
711 typedef struct _DBGKD_CONTEXT_EX
712 {
717 
719 {
726 
727 //
728 // DBGKD Structure for Manipulate
729 //
731 {
736  union
737  {
762  } u;
764 
766 {
771  union
772  {
797  } u;
799 
800 //
801 // File I/O Structure
802 //
803 typedef struct _DBGKD_CREATE_FILE
804 {
813 
814 typedef struct _DBGKD_READ_FILE
815 {
820 
821 typedef struct _DBGKD_WRITE_FILE
822 {
827 
828 typedef struct _DBGKD_CLOSE_FILE
829 {
832 
833 typedef struct _DBGKD_FILE_IO
834 {
837  union
838  {
844  } u;
846 
847 
848 //
849 // Control Request Structure
850 //
852 {
856 
858 {
862 
864 {
866  union
867  {
870  } u;
872 
873 //
874 // Trace I/O Structure
875 //
876 typedef struct _DBGKD_PRINT_TRACE
877 {
880 
881 typedef struct _DBGKD_TRACE_IO
882 {
886  union
887  {
890  } u;
892 
893 static
894 __inline
895 VOID
896 NTAPI
899 {
900  ULONG i;
901 
902  Ex64->ExceptionCode = Ex32->ExceptionCode;
903  Ex64->ExceptionFlags = Ex32->ExceptionFlags;
904  Ex64->ExceptionRecord = Ex32->ExceptionRecord;
905  COPYSE(Ex64,Ex32,ExceptionAddress);
906  Ex64->NumberParameters = Ex32->NumberParameters;
907 
908  for (i = 0; i < EXCEPTION_MAXIMUM_PARAMETERS; i++)
909  {
910  COPYSE(Ex64,Ex32,ExceptionInformation[i]);
911  }
912 }
913 
914 #endif
struct _DBGKD_READ_WRITE_IO32 DBGKD_READ_WRITE_IO32
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:333
DBGKD_CLOSE_FILE CloseFile
Definition: windbgkd.h:843
struct _X86_DBGKD_CONTROL_SET * PX86_DBGKD_CONTROL_SET
struct _DBGKD_GET_INTERNAL_BREAKPOINT64 * PDBGKD_GET_INTERNAL_BREAKPOINT64
DBGKD_WRITE_BREAKPOINT32 WriteBreakPoint
Definition: windbgkd.h:744
struct _DBGKD_RESTORE_BREAKPOINT * PDBGKD_RESTORE_BREAKPOINT
struct _DBGKD_CLOSE_FILE DBGKD_CLOSE_FILE
struct _DBGKD_REQUEST_BREAKPOINT * PDBGKD_REQUEST_BREAKPOINT
struct _DBGKD_FILL_MEMORY DBGKD_FILL_MEMORY
DBGKD_CONTROL_REPORT ControlReport
Definition: windbgkd.h:494
struct _DBGKD_WRITE_BREAKPOINT32 * PDBGKD_WRITE_BREAKPOINT32
ULONG64 ReserveSpace[7]
Definition: windbgkd.h:888
DBGKD_REQUEST_BREAKPOINT RequestBreakpoint
Definition: windbgkd.h:868
ALPHA_DBGKD_CONTROL_REPORT AlphaControlReport
Definition: windbgkd.h:362
ULONG LengthOfStringRead
Definition: windbgkd.h:393
#define IN
Definition: typedefs.h:38
struct _DBGKD_ANY_WAIT_STATE_CHANGE * PDBGKD_ANY_WAIT_STATE_CHANGE
DBGKD_CONTINUE Continue
Definition: windbgkd.h:779
DBGKD_GET_CONTEXT GetContext
Definition: windbgkd.h:775
struct _DBGKD_SET_SPECIAL_CALL64 DBGKD_SET_SPECIAL_CALL64
struct _DBGKD_CONTROL_REQUEST * PDBGKD_CONTROL_REQUEST
struct _DBGKD_SET_INTERNAL_BREAKPOINT64 * PDBGKD_SET_INTERNAL_BREAKPOINT64
struct _DBGKD_WRITE_MEMORY32 * PDBGKD_WRITE_MEMORY32
ALPHA_DBGKD_CONTROL_SET AlphaControlSet
Definition: windbgkd.h:274
union _DBGKD_ANY_WAIT_STATE_CHANGE::@3394 u
struct _DBGKD_WRITE_MEMORY64 * PDBGKD_WRITE_MEMORY64
struct _DBGKD_WRITE_FILE DBGKD_WRITE_FILE
DBGKD_READ_MEMORY32 ReadMemory
Definition: windbgkd.h:738
DBGKD_ANY_CONTROL_REPORT AnyControlReport
Definition: windbgkd.h:495
DBGKD_ANY_CONTROL_SET AnyControlSet
Definition: windbgkd.h:569
IA64_DBGKD_CONTROL_SET IA64ControlSet
Definition: windbgkd.h:275
struct _DBGKD_LOAD_SYMBOLS32 * PDBGKD_LOAD_SYMBOLS32
struct _DBGKD_PRINT_TRACE DBGKD_PRINT_TRACE
struct _DBGKD_WAIT_STATE_CHANGE32 DBGKD_WAIT_STATE_CHANGE32
DBGKD_CONTINUE2 Continue2
Definition: windbgkd.h:747
struct _AMD64_DBGKD_CONTROL_REPORT AMD64_DBGKD_CONTROL_REPORT
struct _DBGKD_CLOSE_FILE * PDBGKD_CLOSE_FILE
ARM_DBGKD_CONTROL_REPORT ARMControlReport
Definition: windbgkd.h:365
struct _DBGKD_REQUEST_BREAKPOINT DBGKD_REQUEST_BREAKPOINT
struct _DBGKD_SET_CONTEXT DBGKD_SET_CONTEXT
struct _DBGKD_GET_INTERNAL_BREAKPOINT32 DBGKD_GET_INTERNAL_BREAKPOINT32
struct _DBGKD_SET_SPECIAL_CALL64 * PDBGKD_SET_SPECIAL_CALL64
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:343
struct _DBGKD_CONTEXT_EX * PDBGKD_CONTEXT_EX
struct _DBGKD_QUERY_MEMORY DBGKD_QUERY_MEMORY
DBGKD_LOAD_SYMBOLS64 LoadSymbols
Definition: windbgkd.h:474
struct _DBGKD_SET_CONTEXT * PDBGKD_SET_CONTEXT
struct _DBGKD_CONTINUE DBGKD_CONTINUE
ULONG64 SearchLength
Definition: windbgkd.h:677
LONG NTSTATUS
Definition: precomp.h:26
USHORT ProcessorLevel
Definition: windbgkd.h:884
union _DBGKD_WAIT_STATE_CHANGE32::@3392 u
struct _ARM_DBGKD_CONTROL_REPORT * PARM_DBGKD_CONTROL_REPORT
ULONG PacketLeader
Definition: windbgkd.h:214
struct _DBGKD_READ_WRITE_IO_EXTENDED64 * PDBGKD_READ_WRITE_IO_EXTENDED64
struct _IA64_DBGKD_CONTROL_REPORT * PIA64_DBGKD_CONTROL_REPORT
struct _DBGKM_EXCEPTION32 * PDBGKM_EXCEPTION32
DBGKD_LOAD_SYMBOLS32 LoadSymbols
Definition: windbgkd.h:459
struct _ARM_DBGKD_CONTROL_SET * PARM_DBGKD_CONTROL_SET
ULONG64 CurrentSymbolStart
Definition: windbgkd.h:250
struct _DBGKD_LOAD_SYMBOLS64 * PDBGKD_LOAD_SYMBOLS64
#define EXCEPTION_MAXIMUM_PARAMETERS
Definition: compat.h:194
DBGKD_QUERY_MEMORY QueryMemory
Definition: windbgkd.h:793
struct _DBGKD_LOAD_SYMBOLS32 DBGKD_LOAD_SYMBOLS32
struct _ALPHA_DBGKD_CONTROL_REPORT * PALPHA_DBGKD_CONTROL_REPORT
DBGKM_EXCEPTION32 Exception
Definition: windbgkd.h:458
DBGKD_QUERY_SPECIAL_CALLS QuerySpecialCalls
Definition: windbgkd.h:783
struct _KD_CONTEXT KD_CONTEXT
struct _ALPHA_DBGKD_CONTROL_SET ALPHA_DBGKD_CONTROL_SET
DBGKD_GET_SET_BUS_DATA GetSetBusData
Definition: windbgkd.h:758
DBGKD_SWITCH_PARTITION SwitchPartition
Definition: windbgkd.h:761
X86_DBGKD_CONTROL_SET X86ControlSet
Definition: windbgkd.h:273
union _DBGKD_FILE_IO::@3403 u
struct _KD_PACKET * PKD_PACKET
DBGKD_WRITE_CUSTOM_BREAKPOINT WriteCustomBreakpoint
Definition: windbgkd.h:795
struct _DBGKD_PRINT_STRING DBGKD_PRINT_STRING
struct _DBGKD_WRITE_BREAKPOINT32 DBGKD_WRITE_BREAKPOINT32
ULONG64 Offset
Definition: windbgkd.h:824
struct _DBGKD_LOAD_SYMBOLS64 DBGKD_LOAD_SYMBOLS64
ULONG ApiNumber
Definition: windbgkd.h:401
struct _DBGKD_BREAKPOINTEX DBGKD_BREAKPOINTEX
struct _DBGKM_EXCEPTION32 DBGKM_EXCEPTION32
struct _DBGKD_SET_INTERNAL_BREAKPOINT32 DBGKD_SET_INTERNAL_BREAKPOINT32
DBGKD_WRITE_FILE WriteFile
Definition: windbgkd.h:842
struct _DBGKD_CREATE_FILE * PDBGKD_CREATE_FILE
DBGKD_GET_VERSION32 GetVersion32
Definition: windbgkd.h:754
DBGKD_READ_WRITE_IO_EXTENDED64 ReadWriteIoExtended
Definition: windbgkd.h:782
struct _DBGKD_WRITE_BREAKPOINT64 * PDBGKD_WRITE_BREAKPOINT64
struct _DBGKD_RESTORE_BREAKPOINT DBGKD_RESTORE_BREAKPOINT
struct _IA64_DBGKD_CONTROL_SET * PIA64_DBGKD_CONTROL_SET
DBGKD_GET_CONTEXT GetContext
Definition: windbgkd.h:742
EXCEPTION_RECORD32 ExceptionRecord
Definition: windbgkd.h:297
DBGKD_SET_CONTEXT SetContext
Definition: windbgkd.h:776
ULONG64 Handle
Definition: windbgkd.h:816
struct _DBGKD_READ_FILE * PDBGKD_READ_FILE
struct _DBGKD_ANY_CONTROL_REPORT * PDBGKD_ANY_CONTROL_REPORT
X86_DBGKD_CONTROL_REPORT X86ControlReport
Definition: windbgkd.h:361
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
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:354
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
ULONG LengthOfPromptString
Definition: windbgkd.h:392
ULONG64 Reserved2[7]
Definition: windbgkd.h:418
static __inline VOID NTAPI ExceptionRecord32To64(IN PEXCEPTION_RECORD32 Ex32, OUT PEXCEPTION_RECORD64 Ex64)
Definition: windbgkd.h:897
struct _ARM_DBGKD_CONTROL_SET ARM_DBGKD_CONTROL_SET
struct _DBGKD_READ_MEMORY64 * PDBGKD_READ_MEMORY64
DBGKD_SET_INTERNAL_BREAKPOINT64 SetInternalBreakpoint
Definition: windbgkd.h:785
struct _DBGKD_MANIPULATE_STATE32 * PDBGKD_MANIPULATE_STATE32
struct _DBGKD_READ_FILE DBGKD_READ_FILE
IA64_DBGKD_CONTROL_REPORT IA64ControlReport
Definition: windbgkd.h:363
struct _DBGKD_READ_WRITE_MSR * PDBGKD_READ_WRITE_MSR
DBGKM_EXCEPTION64 Exception
Definition: windbgkd.h:473
struct _DBGKD_WAIT_STATE_CHANGE32 * PDBGKD_WAIT_STATE_CHANGE32
DBGKD_LOAD_SYMBOLS64 LoadSymbols
Definition: windbgkd.h:489
DBGKD_WRITE_MEMORY64 WriteMemory64
Definition: windbgkd.h:741
unsigned char BOOLEAN
NTSTATUS ContinueStatus
Definition: windbgkd.h:667
struct _DBGKD_FILE_IO DBGKD_FILE_IO
struct _DBGKD_ANY_CONTROL_SET DBGKD_ANY_CONTROL_SET
union _DBGKD_MANIPULATE_STATE64::@3402 u
DBGKD_FILL_MEMORY FillMemory
Definition: windbgkd.h:759
struct _ARM_DBGKD_CONTROL_REPORT ARM_DBGKD_CONTROL_REPORT
struct _DBGKD_READ_WRITE_MSR DBGKD_READ_WRITE_MSR
struct _DBGKD_DEBUG_IO DBGKD_DEBUG_IO
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:327
struct _DBGKD_READ_WRITE_IO_EXTENDED32 * PDBGKD_READ_WRITE_IO_EXTENDED32
ULONG64 TargetBaseAddress
Definition: windbgkd.h:525
struct _AMD64_DBGKD_CONTROL_REPORT * PAMD64_DBGKD_CONTROL_REPORT
DBGKD_READ_WRITE_IO32 ReadWriteIo
Definition: windbgkd.h:748
DBGKD_RESTORE_BREAKPOINT RestoreBreakPoint
Definition: windbgkd.h:778
USHORT ProcessorLevel
Definition: windbgkd.h:402
DBGKD_READ_WRITE_IO64 ReadWriteIo
Definition: windbgkd.h:781
USHORT Processor
Definition: windbgkd.h:885
ULONG CreateDisposition
Definition: windbgkd.h:808
DBGKD_CONTROL_SET ControlSet
Definition: windbgkd.h:568
struct _DBGKD_SET_SPECIAL_CALL32 DBGKD_SET_SPECIAL_CALL32
struct _DBGKD_ANY_CONTROL_SET * PDBGKD_ANY_CONTROL_SET
struct _DBGKD_READ_MEMORY32 * PDBGKD_READ_MEMORY32
struct _DBGKD_GET_CONTEXT * PDBGKD_GET_CONTEXT
ULONG PacketId
Definition: windbgkd.h:217
struct _DBGKD_CONTINUE2 * PDBGKD_CONTINUE2
struct _DBGKD_GET_STRING * PDBGKD_GET_STRING
struct _DBGKD_WRITE_FILE * PDBGKD_WRITE_FILE
ULONG64 SearchAddress
Definition: windbgkd.h:674
DBGKD_RELEASE_BREAKPOINT ReleaseBreakpoint
Definition: windbgkd.h:869
struct _DBGKD_SWITCH_PARTITION DBGKD_SWITCH_PARTITION
struct _DBGKD_GET_INTERNAL_BREAKPOINT32 * PDBGKD_GET_INTERNAL_BREAKPOINT32
struct _DBGKD_RELEASE_BREAKPOINT * PDBGKD_RELEASE_BREAKPOINT
struct _DBGKD_SET_INTERNAL_BREAKPOINT64 DBGKD_SET_INTERNAL_BREAKPOINT64
DBGKD_READ_WRITE_MSR ReadWriteMsr
Definition: windbgkd.h:756
ULONG64 TargetBaseAddress
Definition: windbgkd.h:511
DBGKD_COMMAND_STRING CommandString
Definition: windbgkd.h:490
struct _AMD64_DBGKD_CONTROL_SET AMD64_DBGKD_CONTROL_SET
struct _DBGKD_QUERY_SPECIAL_CALLS DBGKD_QUERY_SPECIAL_CALLS
struct _DBGKD_SET_SPECIAL_CALL32 * PDBGKD_SET_SPECIAL_CALL32
#define COPYSE(p64, p32, f)
Definition: windbgkd.h:12
DBGKD_SWITCH_PARTITION SwitchPartition
Definition: windbgkd.h:794
USHORT PacketType
Definition: windbgkd.h:215
ULONG ApiNumber
Definition: windbgkd.h:835
DBGKD_READ_WRITE_MSR ReadWriteMsr
Definition: windbgkd.h:789
struct _DBGKD_ANY_WAIT_STATE_CHANGE DBGKD_ANY_WAIT_STATE_CHANGE
DBGKD_FILL_MEMORY FillMemory
Definition: windbgkd.h:792
ULONG FileAttributes
Definition: windbgkd.h:806
struct _DBGKD_PRINT_STRING * PDBGKD_PRINT_STRING
struct _DBGKD_GET_CONTEXT DBGKD_GET_CONTEXT
DBGKD_CONTINUE Continue
Definition: windbgkd.h:746
ULONG Status
Definition: windbgkd.h:836
struct _DBGKD_WRITE_CUSTOM_BREAKPOINT * PDBGKD_WRITE_CUSTOM_BREAKPOINT
struct _X86_DBGKD_CONTROL_REPORT * PX86_DBGKD_CONTROL_REPORT
union _DBGKD_TRACE_IO::@3405 u
struct _DBGKD_FILE_IO * PDBGKD_FILE_IO
struct _DBGKD_CREATE_FILE DBGKD_CREATE_FILE
struct _DBGKD_BREAKPOINTEX * PDBGKD_BREAKPOINTEX
DBGKD_RESTORE_BREAKPOINT RestoreBreakPoint
Definition: windbgkd.h:745
AMD64_DBGKD_CONTROL_SET Amd64ControlSet
Definition: windbgkd.h:276
struct _X86_DBGKD_CONTROL_SET X86_DBGKD_CONTROL_SET
DBGKD_CONTEXT_EX ContextEx
Definition: windbgkd.h:796
struct _DBGKD_WAIT_STATE_CHANGE64 DBGKD_WAIT_STATE_CHANGE64
struct _IA64_DBGKD_CONTROL_SET IA64_DBGKD_CONTROL_SET
unsigned __int64 ULONG64
Definition: imports.h:198
EXCEPTION_RECORD64 ExceptionRecord
Definition: windbgkd.h:303
struct _DBGKD_READ_WRITE_IO_EXTENDED64 DBGKD_READ_WRITE_IO_EXTENDED64
unsigned char UCHAR
Definition: xmlstorage.h:181
struct _DBGKD_READ_MEMORY32 DBGKD_READ_MEMORY32
struct _DBGKD_READ_MEMORY64 DBGKD_READ_MEMORY64
DBGKD_BREAKPOINTEX BreakPointEx
Definition: windbgkd.h:755
struct _DBGKD_CONTINUE * PDBGKD_CONTINUE
DBGKD_SEARCH_MEMORY SearchMemory
Definition: windbgkd.h:757
DBGKD_GET_INTERNAL_BREAKPOINT32 GetInternalBreakpoint
Definition: windbgkd.h:753
DBGKD_PRINT_STRING PrintString
Definition: windbgkd.h:406
struct _DBGKD_CONTINUE2 DBGKD_CONTINUE2
DBGKD_GET_STRING GetString
Definition: windbgkd.h:407
BOOLEAN KdpControlCPending
Definition: windbgkd.h:227
struct _DBGKD_WRITE_BREAKPOINT64 DBGKD_WRITE_BREAKPOINT64
DBGKD_SET_INTERNAL_BREAKPOINT32 SetInternalBreakpoint
Definition: windbgkd.h:752
DBGKD_WRITE_MEMORY64 WriteMemory
Definition: windbgkd.h:774
union _DBGKD_CONTROL_REQUEST::@3404 u
struct _DBGKD_COMMAND_STRING * PDBGKD_COMMAND_STRING
UCHAR InstructionStream[DBGKD_MAXSTREAM]
Definition: windbgkd.h:316
DBGKD_BREAKPOINTEX BreakPointEx
Definition: windbgkd.h:788
struct _DBGKD_TRACE_IO * PDBGKD_TRACE_IO
struct _DBGKD_WRITE_MEMORY32 DBGKD_WRITE_MEMORY32
DBGKD_GET_SET_BUS_DATA GetSetBusData
Definition: windbgkd.h:791
struct _DBGKD_MANIPULATE_STATE32 DBGKD_MANIPULATE_STATE32
struct _DBGKD_PRINT_TRACE * PDBGKD_PRINT_TRACE
struct _ALPHA_DBGKD_CONTROL_REPORT ALPHA_DBGKD_CONTROL_REPORT
ULONG64 Offset
Definition: windbgkd.h:817
DBGKD_QUERY_MEMORY QueryMemory
Definition: windbgkd.h:760
DBGKD_SET_CONTEXT SetContext
Definition: windbgkd.h:743
struct _DBGKD_GET_SET_BUS_DATA * PDBGKD_GET_SET_BUS_DATA
struct _KD_CONTEXT * PKD_CONTEXT
struct _DBGKD_READ_WRITE_IO_EXTENDED32 DBGKD_READ_WRITE_IO_EXTENDED32
DBGKD_GET_VERSION64 GetVersion64
Definition: windbgkd.h:787
ULONG ApiNumber
Definition: windbgkd.h:883
struct _DBGKD_QUERY_SPECIAL_CALLS * PDBGKD_QUERY_SPECIAL_CALLS
ULONG64 FoundAddress
Definition: windbgkd.h:675
DBGKD_READ_MEMORY64 ReadMemory
Definition: windbgkd.h:773
struct _DBGKD_READ_WRITE_IO64 DBGKD_READ_WRITE_IO64
ULONG64 Handle
Definition: windbgkd.h:830
struct _DBGKD_GET_SET_BUS_DATA DBGKD_GET_SET_BUS_DATA
struct _DBGKD_GET_STRING DBGKD_GET_STRING
DBGKD_READ_FILE ReadFile
Definition: windbgkd.h:841
struct _DBGKD_READ_WRITE_IO64 * PDBGKD_READ_WRITE_IO64
DBGKD_WRITE_BREAKPOINT64 WriteBreakPoint
Definition: windbgkd.h:777
unsigned short USHORT
Definition: pedump.c:61
ARM_DBGKD_CONTROL_SET ARMControlSet
Definition: windbgkd.h:277
struct _DBGKM_EXCEPTION64 * PDBGKM_EXCEPTION64
struct _DBGKD_MANIPULATE_STATE64 * PDBGKD_MANIPULATE_STATE64
ULONG64 ReserveSpace[7]
Definition: windbgkd.h:839
NTSTATUS ContinueStatus
Definition: windbgkd.h:559
union _DBGKD_DEBUG_IO::@3391 u
DBGKD_READ_MEMORY64 ReadMemory64
Definition: windbgkd.h:740
DBGKD_GET_INTERNAL_BREAKPOINT64 GetInternalBreakpoint
Definition: windbgkd.h:786
DBGKM_EXCEPTION64 Exception
Definition: windbgkd.h:488
struct _IA64_DBGKD_CONTROL_REPORT IA64_DBGKD_CONTROL_REPORT
struct _DBGKD_WRITE_MEMORY64 DBGKD_WRITE_MEMORY64
ULONG KdpDefaultRetries
Definition: windbgkd.h:226
struct _DBGKD_QUERY_MEMORY * PDBGKD_QUERY_MEMORY
struct _DBGKD_DEBUG_IO * PDBGKD_DEBUG_IO
struct _ALPHA_DBGKD_CONTROL_SET * PALPHA_DBGKD_CONTROL_SET
struct _DBGKD_CONTROL_REQUEST DBGKD_CONTROL_REQUEST
ULONG Checksum
Definition: windbgkd.h:218
struct _X86_DBGKD_CONTROL_REPORT X86_DBGKD_CONTROL_REPORT
struct _DBGKD_FILL_MEMORY * PDBGKD_FILL_MEMORY
#define OUT
Definition: typedefs.h:39
struct _DBGKD_READ_WRITE_IO32 * PDBGKD_READ_WRITE_IO32
struct _KD_PACKET KD_PACKET
struct _DBGKD_SET_INTERNAL_BREAKPOINT32 * PDBGKD_SET_INTERNAL_BREAKPOINT32
struct _DBGKD_WRITE_CUSTOM_BREAKPOINT DBGKD_WRITE_CUSTOM_BREAKPOINT
unsigned int ULONG
Definition: retypes.h:1
struct _DBGKD_RELEASE_BREAKPOINT DBGKD_RELEASE_BREAKPOINT
struct _DBGKD_COMMAND_STRING DBGKD_COMMAND_STRING
DBGKD_QUERY_SPECIAL_CALLS QuerySpecialCalls
Definition: windbgkd.h:750
DBGKD_SET_SPECIAL_CALL64 SetSpecialCall
Definition: windbgkd.h:784
struct _AMD64_DBGKD_CONTROL_SET * PAMD64_DBGKD_CONTROL_SET
struct _DBGKD_ANY_CONTROL_REPORT DBGKD_ANY_CONTROL_REPORT
struct _DBGKD_SEARCH_MEMORY * PDBGKD_SEARCH_MEMORY
struct _DBGKD_WAIT_STATE_CHANGE64 * PDBGKD_WAIT_STATE_CHANGE64
struct _DBGKD_CONTEXT_EX DBGKD_CONTEXT_EX
struct _DBGKD_TRACE_IO DBGKD_TRACE_IO
USHORT ByteCount
Definition: windbgkd.h:216
USHORT PatternLength
Definition: windbgkd.h:695
#define DBGKD_MAXSTREAM
Definition: windbgkd.h:19
DBGKD_SET_SPECIAL_CALL32 SetSpecialCall
Definition: windbgkd.h:751
DBGKD_PRINT_TRACE PrintTrace
Definition: windbgkd.h:889
DBGKD_WRITE_MEMORY32 WriteMemory
Definition: windbgkd.h:739
struct _DBGKD_GET_INTERNAL_BREAKPOINT64 DBGKD_GET_INTERNAL_BREAKPOINT64
union _DBGKD_WAIT_STATE_CHANGE64::@3393 u
union _DBGKD_MANIPULATE_STATE32::@3401 u
DBGKD_READ_WRITE_IO_EXTENDED32 ReadWriteIoExtended
Definition: windbgkd.h:749
AMD64_DBGKD_CONTROL_REPORT Amd64ControlReport
Definition: windbgkd.h:364
struct _DBGKM_EXCEPTION64 DBGKM_EXCEPTION64
struct _DBGKD_MANIPULATE_STATE64 DBGKD_MANIPULATE_STATE64
NTSTATUS ContinueStatus
Definition: windbgkd.h:565
USHORT Processor
Definition: windbgkd.h:403
DBGKD_CONTINUE2 Continue2
Definition: windbgkd.h:780
DBGKD_SEARCH_MEMORY SearchMemory
Definition: windbgkd.h:790
DBGKD_CREATE_FILE CreateFile
Definition: windbgkd.h:840
ULONG64 Handle
Definition: windbgkd.h:823
struct _DBGKD_SEARCH_MEMORY DBGKD_SEARCH_MEMORY