From 4dc0e5cc81ef3db911b96ec0fa42d0a30f7274e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Sun, 22 Sep 2024 21:41:46 +0200 Subject: [PATCH] [NTOS:EX] Implement NtSystemDebugControl: SysDbgGetAutoKdEnable/SysDbgSetAutoKdEnable --- ntoskrnl/ex/dbgctrl.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/ntoskrnl/ex/dbgctrl.c b/ntoskrnl/ex/dbgctrl.c index 048cc0c53e5..1948164397f 100644 --- a/ntoskrnl/ex/dbgctrl.c +++ b/ntoskrnl/ex/dbgctrl.c @@ -291,7 +291,33 @@ NtSystemDebugControl( break; case SysDbgGetAutoKdEnable: + if (OutputBufferLength != sizeof(BOOLEAN)) + { + Status = STATUS_INFO_LENGTH_MISMATCH; + } + else + { + *(PBOOLEAN)OutputBuffer = KdAutoEnableOnEvent; + Status = STATUS_SUCCESS; + } + break; + case SysDbgSetAutoKdEnable: + if (InputBufferLength != sizeof(BOOLEAN)) + { + Status = STATUS_INFO_LENGTH_MISMATCH; + } + else if (KdPitchDebugger) + { + Status = STATUS_ACCESS_DENIED; + } + else + { + KdAutoEnableOnEvent = *(PBOOLEAN)InputBuffer; + Status = STATUS_SUCCESS; + } + break; + case SysDbgGetPrintBufferSize: case SysDbgSetPrintBufferSize: case SysDbgGetKdUmExceptionEnable: