https://git.reactos.org/?p=reactos.git;a=commitdiff;h=6b89a0da1183ecdf70dd1…
commit 6b89a0da1183ecdf70dd163876fab5e6d98fad44
Author: Hervé Poussineau <hpoussin(a)reactos.org>
AuthorDate: Sun Sep 22 21:43:00 2024 +0200
Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
CommitDate: Tue Jan 28 22:00:53 2025 +0100
[NTOS:EX] Implement NtSystemDebugControl:
SysDbgGetKdBlockEnable/SysDbgSetKdBlockEnable
---
ntoskrnl/ex/dbgctrl.c | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/ntoskrnl/ex/dbgctrl.c b/ntoskrnl/ex/dbgctrl.c
index a624b576463..a62345ee692 100644
--- a/ntoskrnl/ex/dbgctrl.c
+++ b/ntoskrnl/ex/dbgctrl.c
@@ -367,12 +367,31 @@ NtSystemDebugControl(
break;
case SysDbgGetTriageDump:
- case SysDbgGetKdBlockEnable:
- case SysDbgSetKdBlockEnable:
UNIMPLEMENTED;
Status = STATUS_NOT_IMPLEMENTED;
break;
+ case SysDbgGetKdBlockEnable:
+ if (OutputBufferLength != sizeof(BOOLEAN))
+ {
+ Status = STATUS_INFO_LENGTH_MISMATCH;
+ }
+ else
+ {
+ *(PBOOLEAN)OutputBuffer = KdBlockEnable;
+ Status = STATUS_SUCCESS;
+ }
+ break;
+
+ case SysDbgSetKdBlockEnable:
+ Status = KdChangeOption(KD_OPTION_SET_BLOCK_ENABLE,
+ InputBufferLength,
+ InputBuffer,
+ OutputBufferLength,
+ OutputBuffer,
+ &Length);
+ break;
+
default:
Status = STATUS_INVALID_INFO_CLASS;
break;