- KdDebuggerNotPresent should be FALSE by default.
[reactos.git] / reactos / ntoskrnl / ex / dbgctrl.c
1 /*
2 * PROJECT: ReactOS Kernel
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: ntoskrnl/ex/dbgctrl.c
5 * PURPOSE: System debug control
6 * PROGRAMMERS: Alex Ionescu
7 */
8
9 /* INCLUDES *****************************************************************/
10
11 #include <ntoskrnl.h>
12 #define NDEBUG
13 #include <internal/debug.h>
14
15 /* FUNCTIONS *****************************************************************/
16
17 NTSYSCALLAPI
18 NTSTATUS
19 NTAPI
20 NtQueryDebugFilterState(ULONG ComponentId,
21 ULONG Level)
22 {
23 return STATUS_SUCCESS;
24 }
25
26 NTSYSCALLAPI
27 NTSTATUS
28 NTAPI
29 NtSetDebugFilterState(ULONG ComponentId,
30 ULONG Level,
31 BOOLEAN State)
32 {
33 return STATUS_SUCCESS;
34 }
35
36 /*++
37 * @name NtSystemDebugControl
38 * @implemented
39 *
40 * Perform various queries to debugger.
41 * This API is subject to test-case creation to further evaluate its
42 * abilities (if needed to at all)
43 *
44 * See: http://www.osronline.com/showthread.cfm?link=93915
45 * http://void.ru/files/Ntexapi.h
46 * http://www.codeguru.com/code/legacy/system/ntexapi.zip
47 * http://www.securityfocus.com/bid/9694
48 *
49 * @param ControlCode
50 * Description of the parameter. Wrapped to more lines on ~70th
51 * column.
52 *
53 * @param InputBuffer
54 * FILLME
55 *
56 * @param InputBufferLength
57 * FILLME
58 *
59 * @param OutputBuffer
60 * FILLME
61 *
62 * @param OutputBufferLength
63 * FILLME
64 *
65 * @param ReturnLength
66 * FILLME
67 *
68 * @return STATUS_SUCCESS in case of success, proper error code otherwise
69 *
70 * @remarks None
71 *
72 *--*/
73 NTSTATUS
74 NTAPI
75 NtSystemDebugControl(SYSDBG_COMMAND ControlCode,
76 PVOID InputBuffer,
77 ULONG InputBufferLength,
78 PVOID OutputBuffer,
79 ULONG OutputBufferLength,
80 PULONG ReturnLength)
81 {
82 switch (ControlCode)
83 {
84 case SysDbgQueryTraceInformation:
85 case SysDbgSetTracepoint:
86 case SysDbgSetSpecialCall:
87 case SysDbgClearSpecialCalls:
88 case SysDbgQuerySpecialCalls:
89 case SysDbgBreakPoint:
90 break;
91
92 case SysDbgQueryVersion:
93 break;
94
95 default:
96 break;
97 }
98
99 return STATUS_SUCCESS;
100 }