#include <umtypes.h>
#include <kdtypes.h>
Go to the source code of this file.
|
NTSTATUS NTAPI | KdSystemDebugControl (_In_ SYSDBG_COMMAND Command, _In_ PVOID InputBuffer, _In_ ULONG InputBufferLength, _Out_ PVOID OutputBuffer, _In_ ULONG OutputBufferLength, _Inout_ PULONG ReturnLength, _In_ KPROCESSOR_MODE PreviousMode) |
|
BOOLEAN NTAPI | KdPollBreakIn (VOID) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtQueryDebugFilterState (_In_ ULONG ComponentId, _In_ ULONG Level) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtSetDebugFilterState (_In_ ULONG ComponentId, _In_ ULONG Level, _In_ BOOLEAN State) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtSystemDebugControl (SYSDBG_COMMAND ControlCode, PVOID InputBuffer, ULONG InputBufferLength, PVOID OutputBuffer, ULONG OutputBufferLength, PULONG ReturnLength) |
|
NTSYSAPI NTSTATUS NTAPI | ZwQueryDebugFilterState (ULONG ComponentId, ULONG Level) |
|
NTSYSAPI NTSTATUS NTAPI | ZwSetDebugFilterState (ULONG ComponentId, ULONG Level, BOOLEAN State) |
|
NTSYSAPI NTSTATUS NTAPI | ZwSystemDebugControl (SYSDBG_COMMAND ControlCode, PVOID InputBuffer, ULONG InputBufferLength, PVOID OutputBuffer, ULONG OutputBufferLength, PULONG ReturnLength) |
|
◆ KdPollBreakIn()
Definition at line 75 of file kdlock.c.
76{
78
79
81 {
82
84
85
87 {
88
92 }
93 else
94 {
96
99 {
100
106 {
107
110 }
111
112
114 }
116 }
117
118
120 }
121
122
123 return DoBreak;
124}
#define KeRaiseIrql(irql, oldIrql)
#define KeLowerIrql(oldIrql)
KSPIN_LOCK KdpDebuggerLock
BOOLEAN KdpControlCPressed
BOOLEAN KdDebuggerEnabled
KDP_STATUS NTAPI KdReceivePacket(IN ULONG PacketType, OUT PSTRING MessageHeader, OUT PSTRING MessageData, OUT PULONG DataLength, IN OUT PKD_CONTEXT KdContext)
VOID NTAPI KdpPortUnlock(VOID)
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
FORCEINLINE BOOLEAN KeDisableInterrupts(VOID)
FORCEINLINE VOID KeRestoreInterrupts(BOOLEAN WereEnabled)
BOOLEAN FASTCALL KeTryToAcquireSpinLockAtDpcLevel(IN OUT PKSPIN_LOCK SpinLock)
BOOLEAN KdpControlCPending
#define PACKET_TYPE_KD_POLL_BREAKIN
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
Referenced by KdInitSystem(), KeUpdateSystemTime(), KiInitializeSystem(), and KiSystemStartup().
◆ KdSystemDebugControl()
Definition at line 2152 of file kdapi.c.
2160{
2161
2163 {
2164#if DBG
2165 case ' soR':
2166 {
2168 {
2169 case 0x21:
2171 break;
2172
2173 case 0x22:
2175 break;
2176
2177 case 0x24:
2179 break;
2180
2181 default:
2182 break;
2183 }
2185 }
2186
2187#if defined(_M_IX86) && !defined(_WINKD_)
2188
2189 case 'CsoR':
2190 {
2192 {
2193 case ID_Win32PreServiceHook:
2195 break;
2196
2197 case ID_Win32PostServiceHook:
2199 break;
2200
2201 }
2202 break;
2203 }
2204#endif
2205
2206
2207 case 'DsoR':
2208 {
2210 break;
2211 }
2212#if defined(KDBG)
2213
2214 case 'RbdK':
2215 {
2217 }
2218#endif
2219#endif
2220 default:
2221 break;
2222 }
2223
2224
2225 DbgPrint(
"KdSystemDebugControl is unimplemented!\n");
2227}
#define KeRosDumpStackFrames(Frames, Count)
VOID NTAPI PspDumpThreads(BOOLEAN SystemThreads)
BOOLEAN NTAPI KdbRegisterCliCallback(PVOID Callback, BOOLEAN Deregister)
VOID NTAPI MmDumpArmPfnDatabase(IN BOOLEAN StatusOnly)
#define STATUS_NOT_IMPLEMENTED
_In_ WDFREQUEST _In_ size_t _In_ size_t InputBufferLength
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
Referenced by DriverEntry(), i8042KbdInterruptService(), KdRosDumpStackFrames(), KdRosSetDebugCallback(), and NtSystemDebugControl().
◆ NtQueryDebugFilterState()
Definition at line 2352 of file kdapi.c.
2355{
2357
2358
2360 {
2361
2363 }
2365 {
2366
2367
2368
2369
2371 }
2372 else
2373 {
2374#if (NTDDI_VERSION >= NTDDI_VISTA)
2375
2377
2378#else
2379
2381#endif
2382 }
2383
2384
2386 Level &= ~DPFLTR_MASK;
2387
2388
2390 {
2391
2393 }
2394 else
2395 {
2396
2398 }
2399}
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char UINT32 ComponentId
ULONG KdComponentTableSize
PULONG KdComponentTable[MAX_KD_COMPONENT_TABLE_ENTRIES]
#define STATUS_INVALID_PARAMETER_1
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR Level
Referenced by DbgQueryDebugFilterState(), KdpPrint(), and vDbgPrintExWithPrefixInternal().
◆ NtSetDebugFilterState()
Definition at line 2406 of file kdapi.c.
2410{
2412
2413
2415 {
2416
2418 }
2419
2420
2422 {
2423
2425 }
2427 {
2428
2429
2430
2431
2433 }
2434 else
2435 {
2436#if (NTDDI_VERSION >= NTDDI_VISTA)
2437
2439#else
2440
2442#endif
2443 }
2444
2445
2447 Level &= ~DPFLTR_MASK;
2448
2449
2452 else
2454
2456}
#define ExGetPreviousMode
const LUID SeDebugPrivilege
BOOLEAN NTAPI SeSinglePrivilegeCheck(_In_ LUID PrivilegeValue, _In_ KPROCESSOR_MODE PreviousMode)
Checks if a single privilege is present in the context of the calling thread.
#define STATUS_ACCESS_DENIED
Referenced by DbgSetDebugFilterState(), and KdbpCmdFilter().
◆ NtSystemDebugControl()
Definition at line 182 of file dbgctrl.c.
188{
190 {
229 default:
231 }
232}
IN CINT OUT PVOID IN ULONG OUT PULONG ReturnLength
NTSTATUS NTAPI KdSystemDebugControl(_In_ SYSDBG_COMMAND Command, _In_ PVOID InputBuffer, _In_ ULONG InputBufferLength, _Out_ PVOID OutputBuffer, _In_ ULONG OutputBufferLength, _Inout_ PULONG ReturnLength, _In_ KPROCESSOR_MODE PreviousMode)
#define KeGetPreviousMode()
@ SysDbgQuerySpecialCalls
@ SysDbgGetPrintBufferSize
@ SysDbgQueryTraceInformation
@ SysDbgClearSpecialCalls
@ SysDbgWriteControlSpace
@ SysDbgEnableKernelDebugger
@ SysDbgGetKdUmExceptionEnable
@ SysDbgSetKdUmExceptionEnable
@ SysDbgSetPrintBufferSize
@ SysDbgQueryModuleInformation
@ SysDbgDisableKernelDebugger
#define STATUS_INVALID_INFO_CLASS
_In_ WDFREQUEST _In_ size_t OutputBufferLength
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
_IRQL_requires_same_ typedef _In_ ULONG ControlCode
◆ ZwQueryDebugFilterState()
◆ ZwSetDebugFilterState()
◆ ZwSystemDebugControl()