[NTOSKRNL]
authorPierre Schweitzer <pierre@reactos.org>
Sat, 16 May 2015 20:00:34 +0000 (20:00 +0000)
committerPierre Schweitzer <pierre@reactos.org>
Sat, 16 May 2015 20:00:34 +0000 (20:00 +0000)
Stub support for IOCTL_WMI_SET_MARK

CORE-9699

svn path=/trunk/; revision=67782

reactos/ntoskrnl/wmi/wmidrv.c

index 838199c..50e9278 100644 (file)
@@ -63,6 +63,12 @@ typedef struct _WMI_NOTIFICATION
     WMI_GUID_OBJECT_ENTRY GuidObjects[0];
 } WMI_NOTIFICATION, *PWMI_NOTIFICATION;
 
     WMI_GUID_OBJECT_ENTRY GuidObjects[0];
 } WMI_NOTIFICATION, *PWMI_NOTIFICATION;
 
+typedef struct _WMI_SET_MARK
+{
+    ULONG Flags;
+    WCHAR Mark[1];
+} WMI_SET_MARK, *PWMI_SET_MARK;
+
 PDEVICE_OBJECT WmipServiceDeviceObject;
 PDEVICE_OBJECT WmipAdminDeviceObject;
 FAST_IO_DISPATCH WmipFastIoDispatch;
 PDEVICE_OBJECT WmipServiceDeviceObject;
 PDEVICE_OBJECT WmipAdminDeviceObject;
 FAST_IO_DISPATCH WmipFastIoDispatch;
@@ -427,6 +433,14 @@ WmipOpenGuidForEvents(
     return STATUS_SUCCESS;
 }
 
     return STATUS_SUCCESS;
 }
 
+static
+NTSTATUS
+WmiSetMark(PWMI_SET_MARK Buffer, ULONG Length)
+{
+    UNIMPLEMENTED_DBGBREAK();
+    return STATUS_SUCCESS;
+}
+
 NTSTATUS
 NTAPI
 WmipIoControl(
 NTSTATUS
 NTAPI
 WmipIoControl(
@@ -491,6 +505,18 @@ WmipIoControl(
             break;
         }
 
             break;
         }
 
+        case IOCTL_WMI_SET_MARK:
+        {
+            if (InputLength < FIELD_OFFSET(WMI_SET_MARK, Mark))
+            {
+                Status = STATUS_UNSUCCESSFUL;
+                break;
+            }
+
+            Status = WmiSetMark(Buffer, InputLength);
+            break;
+        }
+
         default:
             DPRINT1("Unsupported yet IOCTL: 0x%lx\n", IoControlCode);
             Status = STATUS_INVALID_DEVICE_REQUEST;
         default:
             DPRINT1("Unsupported yet IOCTL: 0x%lx\n", IoControlCode);
             Status = STATUS_INVALID_DEVICE_REQUEST;