282 isInternalGuid =
FALSE;
286 isInternalGuid =
TRUE;
324 classWmiInfo = commonExtension->
IsFdo ?
327 switch(minorFunction)
338 ULONG registryPathOffset;
339 ULONG mofResourceOffset;
343 ULONG nameSize, nameOffset, nameFlags;
345 PCLASS_QUERY_WMI_REGINFO_EX ClassQueryWmiRegInfoEx;
349 name.MaximumLength = 0;
352 ClassQueryWmiRegInfoEx = commonExtension->
IsFdo ?
358 (ClassQueryWmiRegInfoEx ==
NULL))
370 status = (*ClassQueryWmiRegInfoEx)(
402 nameInfo = commonExtension->
IsFdo ?
408 nameInfo = nameOffset;
411 mofResourceOffset = nameOffset + nameSize;
413 registryPathOffset = mofResourceOffset +
418 bufferNeeded = registryPathOffset + regPath->
Length;
419 bufferNeeded +=
sizeof(
USHORT);
423 retSize = bufferNeeded;
454 bufferNeeded = nameOffset +
sizeof(
WCHAR);
455 bufferNeeded +=
name.Length;
459 *stringPtr++ =
name.Length;
468 bufferNeeded = mofResourceOffset +
sizeof(
WCHAR);
469 bufferNeeded += mofName.
Length;
473 *stringPtr++ = mofName.
Length;
481 bufferNeeded = registryPathOffset +
sizeof(
WCHAR);
482 bufferNeeded += regPath->
Length;
486 *stringPtr++ = regPath->
Length;
500 retSize =
sizeof(
ULONG);
509 Irp->IoStatus.Information = retSize;
555 ULONG dataBlockOffset;
570 (
PUCHAR)wnode + dataBlockOffset);
577 (
PUCHAR)wnode + dataBlockOffset);
struct tagWNODE_SINGLE_ITEM * PWNODE_SINGLE_ITEM
#define STATUS_DEVICE_DOES_NOT_EXIST
#define NUM_CLASS_WMI_GUIDS
#define ClassAcquireRemoveLock(devobj, tag)
struct tagWNODE_ALL_DATA * PWNODE_ALL_DATA
struct tagWNODE_SINGLE_INSTANCE * PWNODE_SINGLE_INSTANCE
#define STATUS_WMI_GUID_NOT_FOUND
BOOLEAN ClassFindGuid(PGUIDREGINFO GuidList, ULONG GuidCount, LPGUID Guid, PULONG GuidIndex)
_In_ LPGUID _In_ ULONG InstanceIndex
#define STATUS_INVALID_DEVICE_REQUEST
#define IRP_MN_QUERY_SINGLE_INSTANCE
UNICODE_STRING RegistryPath
struct tagWNODE_METHOD_ITEM * PWNODE_METHOD_ITEM
PCLASS_QUERY_WMI_DATABLOCK ClassQueryWmiDataBlock
#define IRP_MN_ENABLE_COLLECTION
#define STATUS_WMI_INSTANCE_NOT_FOUND
struct tagWNODE_ALL_DATA WNODE_ALL_DATA
_In_ PDEVICE_OBJECT DeviceObject
#define _Analysis_assume_(expr)
NTSTATUS ClassQueryInternalDataBlock(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp, IN ULONG GuidIndex, IN ULONG BufferAvail, OUT PUCHAR Buffer)
#define TRACE_LEVEL_VERBOSE
#define FREE_POOL(_PoolPtr)
#define IRP_MN_CHANGE_SINGLE_ITEM
#define IRP_MN_DISABLE_COLLECTION
PCLASS_SET_WMI_DATABLOCK ClassSetWmiDataBlock
VOID NTAPI ClassReleaseRemoveLock(_In_ PDEVICE_OBJECT DeviceObject, _In_opt_ PIRP Tag)
#define WMIREG_FLAG_INSTANCE_PDO
PCLASS_QUERY_WMI_REGINFO_EX ClassFdoQueryWmiRegInfoEx
#define STATUS_INVALID_BUFFER_SIZE
#define WNODE_FLAG_STATIC_INSTANCE_NAMES
GUIDREGINFO wmiClassGuids[]
_Must_inspect_result_ _In_ ULONG Flags
#define IRP_MN_ENABLE_EVENTS
CLASS_WMI_INFO ClassWmiInfo
#define NT_SUCCESS(StatCode)
PCLASS_QUERY_WMI_REGINFO_EX ClassPdoQueryWmiRegInfoEx
BOOLEAN ClassFindInternalGuid(LPGUID Guid, PULONG GuidIndex)
#define IRP_MN_DISABLE_EVENTS
PCLASS_DRIVER_EXTENSION DriverExtension
#define IRP_MN_EXECUTE_METHOD
#define TRACE_LEVEL_WARNING
#define WMIREG_FLAG_INSTANCE_LIST
#define IRP_MN_CHANGE_SINGLE_INSTANCE
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
PCLASS_SET_WMI_DATAITEM ClassSetWmiDataItem
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
SCSIPORT_API NTSTATUS NTAPI ClassWmiCompleteRequest(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp, _In_ NTSTATUS Status, _In_ ULONG BufferUsed, _In_ CCHAR PriorityBoost)
#define IRP_MN_QUERY_ALL_DATA
PDEVICE_OBJECT LowerDeviceObject
NTSTATUS NTAPI IoCallDriver(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
#define IoSkipCurrentIrpStackLocation(Irp)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define RtlCopyMemory(Destination, Source, Length)
PCLASS_EXECUTE_WMI_METHOD ClassExecuteWmiMethod
struct _NAMED_PIPE_CREATE_PARAMETERS * Parameters
VOID NTAPI ClassCompleteRequest(_In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp, _In_ CCHAR PriorityBoost)
static SERVICE_STATUS status
PCLASS_WMI_FUNCTION_CONTROL ClassWmiFunctionControl
PCLASS_QUERY_WMI_REGINFO ClassQueryWmiRegInfo
GLuint const GLchar * name