[10/22] uio: move SDDL string to INF on Windows

Message ID 1597360905-74106-11-git-send-email-navasile@linux.microsoft.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series windows/netuio: add netuio driver for Windows |

Checks

Context Check Description
ci/checkpatch warning coding style issues

Commit Message

Narcisa Ana Maria Vasile Aug. 13, 2020, 11:21 p.m. UTC
  From: Harini Ramakrishnan <haramakr@microsoft.com>

---
 kernel/windows/netuio/netuio.inf   |  7 +++++++
 kernel/windows/netuio/netuio_dev.c | 15 +++++----------
 2 files changed, 12 insertions(+), 10 deletions(-)
  

Patch

diff --git a/kernel/windows/netuio/netuio.inf b/kernel/windows/netuio/netuio.inf
index 0453b371a..b1696cc50 100644
--- a/kernel/windows/netuio/netuio.inf
+++ b/kernel/windows/netuio/netuio.inf
@@ -62,6 +62,13 @@  CopyFiles=Drivers_Dir
 [Drivers_Dir]
 netuio.sys
 
+[netuio_Device.NT.HW]
+AddReg=Device.HW.Registry
+
+[Device.HW.Registry]
+; Ensure that only administrators can access our device object.
+HKR,,Security,,"D:P(A;;GA;;;SY)(A;;GA;;;BA)"
+
 ;-------------- Service installation
 [netuio_Device.NT.Services]
 AddService = netuio,%SPSVCINST_ASSOCSERVICE%, netuio_Service_Inst
diff --git a/kernel/windows/netuio/netuio_dev.c b/kernel/windows/netuio/netuio_dev.c
index f5d41cb65..a1fe447f7 100644
--- a/kernel/windows/netuio/netuio_dev.c
+++ b/kernel/windows/netuio/netuio_dev.c
@@ -33,18 +33,13 @@  netuio_create_device(_Inout_ PWDFDEVICE_INIT DeviceInit)
 
     PAGED_CODE();
 
-    // Ensure that only administrators can access our device object.
-    status = WdfDeviceInitAssignSDDLString(DeviceInit, &SDDL_DEVOBJ_SYS_ALL_ADM_ALL);
+    WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&deviceAttributes, NETUIO_CONTEXT_DATA);
 
-    if (NT_SUCCESS(status)) {
-        WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&deviceAttributes, NETUIO_CONTEXT_DATA);
-
-        // Set the device context cleanup callback.
-        // This function will be called when the WDF Device Object associated to the current device is destroyed
-        deviceAttributes.EvtCleanupCallback = netuio_evt_device_context_cleanup;
+    // Set the device context cleanup callback.
+    // This function will be called when the WDF Device Object associated to the current device is destroyed
+    deviceAttributes.EvtCleanupCallback = netuio_evt_device_context_cleanup;
 
-        status = WdfDeviceCreate(&DeviceInit, &deviceAttributes, &device);
-    }
+    status = WdfDeviceCreate(&DeviceInit, &deviceAttributes, &device);
 
 	if (NT_SUCCESS(status)) {
 		// Create a device interface so that applications can find and talk to us.