Defines |
| #define | NDEBUG |
| #define | KEY_BS 8 |
| #define | KEY_ESC 27 |
| #define | KEY_DEL 127 |
| #define | KEY_SCAN_UP 72 |
| #define | KEY_SCAN_DOWN 80 |
| #define | KEYSC_END 0x004f |
| #define | KEYSC_PAGEUP 0x0049 |
| #define | KEYSC_PAGEDOWN 0x0051 |
| #define | KEYSC_HOME 0x0047 |
| #define | KEYSC_ARROWUP 0x0048 |
| #define | KDB_ENTER_CONDITION_TO_STRING(cond) |
| #define | KDB_ACCESS_TYPE_TO_STRING(type) |
| #define | NPX_STATE_TO_STRING(state) |
Functions |
| static BOOLEAN | KdbpCmdEvalExpression (ULONG Argc, PCHAR Argv[]) |
| | Evaluates an expression and displays the result.
|
| static BOOLEAN | KdbpCmdDisassembleX (ULONG Argc, PCHAR Argv[]) |
| | Disassembles 10 instructions at eip or given address or displays 16 dwords from memory at given address.
|
| static BOOLEAN | KdbpCmdRegs (ULONG Argc, PCHAR Argv[]) |
| | Displays CPU registers.
|
| static BOOLEAN | KdbpCmdBackTrace (ULONG Argc, PCHAR Argv[]) |
| | Displays a backtrace.
|
| static BOOLEAN | KdbpCmdContinue (ULONG Argc, PCHAR Argv[]) |
| | Continues execution of the system/leaves KDB.
|
| static BOOLEAN | KdbpCmdStep (ULONG Argc, PCHAR Argv[]) |
| | Continues execution of the system/leaves KDB.
|
| static BOOLEAN | KdbpCmdBreakPointList (ULONG Argc, PCHAR Argv[]) |
| | Lists breakpoints.
|
| static BOOLEAN | KdbpCmdEnableDisableClearBreakPoint (ULONG Argc, PCHAR Argv[]) |
| | Enables, disables or clears a breakpoint.
|
| static BOOLEAN | KdbpCmdBreakPoint (ULONG Argc, PCHAR Argv[]) |
| | Sets a software or hardware (memory) breakpoint at the given address.
|
| static BOOLEAN | KdbpCmdThread (ULONG Argc, PCHAR Argv[]) |
| | Lists threads or switches to another thread context.
|
| static BOOLEAN | KdbpCmdProc (ULONG Argc, PCHAR Argv[]) |
| | Lists processes or switches to another process context.
|
| static BOOLEAN | KdbpCmdMod (ULONG Argc, PCHAR Argv[]) |
| | Lists loaded modules or the one containing the specified address.
|
| static BOOLEAN | KdbpCmdGdtLdtIdt (ULONG Argc, PCHAR Argv[]) |
| | Displays GDT, LDT or IDTd.
|
| static BOOLEAN | KdbpCmdPcr (ULONG Argc, PCHAR Argv[]) |
| | Displays the KPCR.
|
| static BOOLEAN | KdbpCmdTss (ULONG Argc, PCHAR Argv[]) |
| | Displays the TSS.
|
| static BOOLEAN | KdbpCmdBugCheck (ULONG Argc, PCHAR Argv[]) |
| | Bugchecks the system.
|
| static BOOLEAN | KdbpCmdFilter (ULONG Argc, PCHAR Argv[]) |
| | Display list of active debug channels.
|
| static BOOLEAN | KdbpCmdSet (ULONG Argc, PCHAR Argv[]) |
| | Sets or displays a config variables value.
|
| static BOOLEAN | KdbpCmdHelp (ULONG Argc, PCHAR Argv[]) |
| | Displays help screen.
|
| static BOOLEAN | KdbpCmdDmesg (ULONG Argc, PCHAR Argv[]) |
| | Display debug messages on screen, with paging.
|
| static BOOLEAN | KdbpGetComponentId (IN PCCH ComponentName, OUT PULONG ComponentId) |
| | Transform a component name to an integer.
|
| static BOOLEAN | KdbpEvaluateExpression (IN PCHAR Expression, IN LONG ErrOffset, OUT PULONGLONG Result) |
| | Evaluates an expression...
|
| static BOOLEAN | KdbpTrapFrameFromPrevTss (PKTRAP_FRAME TrapFrame) |
| VOID __cdecl | KiTrap02 (VOID) |
| VOID FASTCALL | KiTrap03Handler (IN PKTRAP_FRAME) |
| VOID __cdecl | KiTrap08 (VOID) |
| VOID __cdecl | KiTrap09 (VOID) |
| static BOOLEAN | KdbpInNmiOrDoubleFaultHandler (ULONG_PTR Address) |
| VOID | KdbpPager (IN PCHAR Buffer, IN ULONG BufLength) |
| | Prints the given string with, page by page.
|
| VOID | KdbpPrint (IN PCHAR Format, IN...OPTIONAL) |
| | Prints the given string with printf-like formatting.
|
| void * | memrchr (const void *s, int c, size_t n) |
| PCHAR | CountOnePageUp (PCHAR Buffer, ULONG BufLength, PCHAR pCurPos) |
| | Calculate pointer position for N lines upper of current position.
|
| static VOID | KdbpCommandHistoryAppend (IN PCHAR Command) |
| | Appends a command to the command history.
|
| static VOID | KdbpReadCommand (OUT PCHAR Buffer, IN ULONG Size) |
| | Reads a line of user-input.
|
| static BOOLEAN | KdbpDoCommand (IN PCHAR Command) |
| | Parses command line and executes command if found.
|
| VOID | KdbpCliMainLoop (IN BOOLEAN EnteredOnSingleStep) |
| | KDB Main Loop.
|
| VOID | KdbpCliModuleLoaded (IN PUNICODE_STRING Name) |
| | Called when a module is loaded.
|
| VOID | KdbpCliInterpretInitFile () |
| | This function is called by KdbEnterDebuggerException...
|
| VOID | KdbpCliInit () |
| | Called when KDB is initialized.
|
| VOID NTAPI | KdpSerialDebugPrint (LPSTR Message, ULONG Length) |
| ULONG NTAPI | KdpPrompt (IN LPSTR InString, IN USHORT InStringLength, OUT LPSTR OutString, IN USHORT OutStringLength) |
Variables |
| static BOOLEAN | KdbUseIntelSyntax = FALSE |
| static BOOLEAN | KdbBreakOnModuleLoad = FALSE |
| static CHAR | KdbCommandHistoryBuffer [2048] |
| static PCHAR | KdbCommandHistory [sizeof(KdbCommandHistoryBuffer)/8] = { NULL } |
| static LONG | KdbCommandHistoryBufferIndex = 0 |
| static LONG | KdbCommandHistoryIndex = 0 |
| static ULONG | KdbNumberOfRowsPrinted = 0 |
| static ULONG | KdbNumberOfColsPrinted = 0 |
| static BOOLEAN | KdbOutputAborted = FALSE |
| static BOOLEAN | KdbRepeatLastCommand = FALSE |
| static LONG | KdbNumberOfRowsTerminal = -1 |
| static LONG | KdbNumberOfColsTerminal = -1 |
| PCHAR | KdbInitFileBuffer = NULL |
| BOOLEAN | KdbpBugCheckRequested = FALSE |
| volatile BOOLEAN | KdbpIsInDmesgMode |
| const ULONG | KdpDmesgBufferSize |
| PCHAR | KdpDmesgBuffer |
| volatile ULONG | KdpDmesgCurrentPosition |
| volatile ULONG | KdpDmesgFreeBytes |
| volatile ULONG | KdbDmesgTotalWritten |
| struct { |
| PCHAR Name |
| PCHAR Syntax |
| PCHAR Help |
| BOOLEAN(* Fn )(ULONG Argc, PCHAR Argv[]) |
| } | KdbDebuggerCommands [] |
| STRING | KdpPromptString = RTL_CONSTANT_STRING("kdb:> ") |
| KSPIN_LOCK | KdpSerialSpinLock |