2 * PROJECT: ReactOS Kernel
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: ntoskrnl/io/wmi.c
5 * PURPOSE: I/O Windows Management Instrumentation (WMI) Support
6 * PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
9 /* INCLUDES *****************************************************************/
13 #include <internal/debug.h>
15 /* FUNCTIONS *****************************************************************/
22 IoWMIRegistrationControl(IN PDEVICE_OBJECT DeviceObject
,
25 DPRINT1("IoWMIRegistrationControl() called for DO %p, requesting %d action, returning success\n",
26 DeviceObject
, Action
);
28 return STATUS_SUCCESS
;
36 IoWMIAllocateInstanceIds(IN GUID
*Guid
,
37 IN ULONG InstanceCount
,
38 OUT ULONG
*FirstInstanceId
)
41 return STATUS_NOT_IMPLEMENTED
;
49 IoWMISuggestInstanceName(IN PDEVICE_OBJECT PhysicalDeviceObject OPTIONAL
,
50 IN PUNICODE_STRING SymbolicLinkName OPTIONAL
,
51 IN BOOLEAN CombineNames
,
52 OUT PUNICODE_STRING SuggestedInstanceName
)
55 return STATUS_NOT_IMPLEMENTED
;
63 IoWMIWriteEvent(IN PVOID WnodeEventItem
)
65 DPRINT1("IoWMIWriteEvent() called for WnodeEventItem %p, returning success\n",
68 /* Free the buffer if we are returning success */
69 if (WnodeEventItem
!= NULL
)
70 ExFreePool(WnodeEventItem
);
72 return STATUS_SUCCESS
;
80 IoWMIOpenBlock(IN GUID
*DataBlockGuid
,
81 IN ULONG DesiredAccess
,
82 OUT PVOID
*DataBlockObject
)
85 return STATUS_NOT_IMPLEMENTED
;
93 IoWMIQueryAllData(IN PVOID DataBlockObject
,
94 IN OUT ULONG
*InOutBufferSize
,
98 return STATUS_NOT_IMPLEMENTED
;
106 IoWMIQueryAllDataMultiple(IN PVOID
*DataBlockObjectList
,
107 IN ULONG ObjectCount
,
108 IN OUT ULONG
*InOutBufferSize
,
112 return STATUS_NOT_IMPLEMENTED
;
120 IoWMIQuerySingleInstance(IN PVOID DataBlockObject
,
121 IN PUNICODE_STRING InstanceName
,
122 IN OUT ULONG
*InOutBufferSize
,
126 return STATUS_NOT_IMPLEMENTED
;
134 IoWMIQuerySingleInstanceMultiple(IN PVOID
*DataBlockObjectList
,
135 IN PUNICODE_STRING InstanceNames
,
136 IN ULONG ObjectCount
,
137 IN OUT ULONG
*InOutBufferSize
,
141 return STATUS_NOT_IMPLEMENTED
;
149 IoWMISetSingleInstance(IN PVOID DataBlockObject
,
150 IN PUNICODE_STRING InstanceName
,
152 IN ULONG ValueBufferSize
,
153 IN PVOID ValueBuffer
)
156 return STATUS_NOT_IMPLEMENTED
;
164 IoWMISetSingleItem(IN PVOID DataBlockObject
,
165 IN PUNICODE_STRING InstanceName
,
168 IN ULONG ValueBufferSize
,
169 IN PVOID ValueBuffer
)
172 return STATUS_NOT_IMPLEMENTED
;
180 IoWMIExecuteMethod(IN PVOID DataBlockObject
,
181 IN PUNICODE_STRING InstanceName
,
183 IN ULONG InBufferSize
,
184 IN OUT PULONG OutBufferSize
,
185 IN OUT PUCHAR InOutBuffer
)
188 return STATUS_NOT_IMPLEMENTED
;
196 IoWMISetNotificationCallback(IN PVOID Object
,
197 IN WMI_NOTIFICATION_CALLBACK Callback
,
201 return STATUS_NOT_IMPLEMENTED
;
209 IoWMIHandleToInstanceName(IN PVOID DataBlockObject
,
210 IN HANDLE FileHandle
,
211 OUT PUNICODE_STRING InstanceName
)
214 return STATUS_NOT_IMPLEMENTED
;
222 IoWMIDeviceObjectToInstanceName(IN PVOID DataBlockObject
,
223 IN PDEVICE_OBJECT DeviceObject
,
224 OUT PUNICODE_STRING InstanceName
)
227 return STATUS_NOT_IMPLEMENTED
;
235 NtTraceEvent(IN ULONG TraceHandle
,
237 IN ULONG TraceHeaderLength
,
238 IN
struct _EVENT_TRACE_HEADER
* TraceHeader
)
241 return STATUS_NOT_IMPLEMENTED
;