[ros-diffs] [pschweitzer] 37371: Added a stubbed driver for KSecDD

pschweitzer at svn.reactos.org pschweitzer at svn.reactos.org
Sat Nov 15 14:33:14 CET 2008


Author: pschweitzer
Date: Sat Nov 15 07:33:13 2008
New Revision: 37371

URL: http://svn.reactos.org/svn/reactos?rev=37371&view=rev
Log:
Added a stubbed driver for KSecDD

Added:
    branches/pierre-fsd/drivers/filesystems/ksecdd/   (with props)
    branches/pierre-fsd/drivers/filesystems/ksecdd/dispatch.c   (with props)
    branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.c   (with props)
    branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.h   (with props)
    branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rbuild   (with props)
    branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rc   (with props)
Modified:
    branches/pierre-fsd/boot/bootdata/hivesys.inf
    branches/pierre-fsd/boot/bootdata/packages/reactos.dff
    branches/pierre-fsd/drivers/filesystems/directory.rbuild

Modified: branches/pierre-fsd/boot/bootdata/hivesys.inf
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/boot/bootdata/hivesys.inf?rev=37371&r1=37370&r2=37371&view=diff
==============================================================================
--- branches/pierre-fsd/boot/bootdata/hivesys.inf [iso-8859-1] (original)
+++ branches/pierre-fsd/boot/bootdata/hivesys.inf [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -939,6 +939,13 @@
 HKLM,"SYSTEM\CurrentControlSet\Services\Npfs","Start",0x00010001,0x00000001
 HKLM,"SYSTEM\CurrentControlSet\Services\Npfs","Type",0x00010001,0x00000002
 
+; KSecDD driver
+HKLM,"SYSTEM\CurrentControlSet\Services\KSecDD","ErrorControl",0x00010001,0x00000000
+HKLM,"SYSTEM\CurrentControlSet\Services\KSecDD","Group",0x00000000,"Base"
+HKLM,"SYSTEM\CurrentControlSet\Services\KSecDD","ImagePath",0x00020000,"system32\drivers\ksecdd.sys"
+HKLM,"SYSTEM\CurrentControlSet\Services\KSecDD","Start",0x00010001,0x00000000
+HKLM,"SYSTEM\CurrentControlSet\Services\KSecDD","Type",0x00010001,0x00000001
+
 ; NTFS filesystem driver
 HKLM,"SYSTEM\CurrentControlSet\Services\Ntfs","ErrorControl",0x00010001,0x00000000
 HKLM,"SYSTEM\CurrentControlSet\Services\Ntfs","Group",0x00000000,"File System"

Modified: branches/pierre-fsd/boot/bootdata/packages/reactos.dff
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/boot/bootdata/packages/reactos.dff?rev=37371&r1=37370&r2=37371&view=diff
==============================================================================
--- branches/pierre-fsd/boot/bootdata/packages/reactos.dff [iso-8859-1] (original)
+++ branches/pierre-fsd/boot/bootdata/packages/reactos.dff [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -365,6 +365,7 @@
 drivers\directx\dxgthk\dxgthk.sys                   2
 
 drivers\filesystems\fs_rec\fs_rec.sys               2
+drivers\filesystems\ksecdd\ksecdd.sys               2
 drivers\filesystems\msfs\msfs.sys                   2
 drivers\filesystems\mup\mup.sys                     2
 drivers\filesystems\npfs\npfs.sys                   2

Modified: branches/pierre-fsd/drivers/filesystems/directory.rbuild
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/filesystems/directory.rbuild?rev=37371&r1=37370&r2=37371&view=diff
==============================================================================
--- branches/pierre-fsd/drivers/filesystems/directory.rbuild [iso-8859-1] (original)
+++ branches/pierre-fsd/drivers/filesystems/directory.rbuild [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -9,6 +9,9 @@
 </directory>
 <directory name="fs_rec">
 	<xi:include href="fs_rec/fs_rec.rbuild" />
+</directory>
+<directory name="ksecdd">
+	<xi:include href="ksecdd/ksecdd.rbuild" />
 </directory>
 <directory name="msfs">
 	<xi:include href="msfs/msfs.rbuild" />

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/
------------------------------------------------------------------------------
--- bugtraq:logregex (added)
+++ bugtraq:logregex Sat Nov 15 07:33:13 2008
@@ -1,0 +1,2 @@
+([Ii]ssue|[Bb]ug)s? #?(\d+)(,? ?#?(\d+))*(,? ?(and |or )?#?(\d+))?
+(\d+)

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/
------------------------------------------------------------------------------
    bugtraq:message = See issue #%BUGID% for more details.

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/
------------------------------------------------------------------------------
    bugtraq:url = http://www.reactos.org/bugzilla/show_bug.cgi?id=%BUGID%

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/
------------------------------------------------------------------------------
    tsvn:logminsize = 10

Added: branches/pierre-fsd/drivers/filesystems/ksecdd/dispatch.c
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/filesystems/ksecdd/dispatch.c?rev=37371&view=auto
==============================================================================
--- branches/pierre-fsd/drivers/filesystems/ksecdd/dispatch.c (added)
+++ branches/pierre-fsd/drivers/filesystems/ksecdd/dispatch.c [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -1,0 +1,48 @@
+/*
+ *  ReactOS kernel
+ *  Copyright (C) 2008 ReactOS Team
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * COPYRIGHT:        See COPYING in the top level directory
+ * PROJECT:          ReactOS kernel
+ * FILE:             drivers/filesystem/ksecdd/dispatch.c
+ * PURPOSE:          Kernel Security Support Provider Interface
+ * PROGRAMMER:       Pierre Schweitzer 
+ */
+
+/* INCLUDES *****************************************************************/
+
+#include "ksecdd.h"
+
+#define NDEBUG
+#include <debug.h>
+
+/* FUNCTIONS ****************************************************************/
+
+NTSTATUS NTAPI
+KsecDispatch(PDEVICE_OBJECT DeviceObject,
+             PIRP Irp)
+{
+    NTSTATUS Status = STATUS_NOT_IMPLEMENTED;
+
+    ASSERT(DeviceObject);
+    ASSERT(Irp);
+
+    Irp->IoStatus.Status = Status;
+    IoCompleteRequest(Irp, IO_NO_INCREMENT);
+
+    return Status;
+}

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/dispatch.c
------------------------------------------------------------------------------
    svn:eol-style = native

Added: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.c
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.c?rev=37371&view=auto
==============================================================================
--- branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.c (added)
+++ branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.c [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -1,0 +1,75 @@
+/*
+ *  ReactOS kernel
+ *  Copyright (C) 2008 ReactOS Team
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * COPYRIGHT:        See COPYING in the top level directory
+ * PROJECT:          ReactOS kernel
+ * FILE:             drivers/filesystem/ksecdd/ksecdd.c
+ * PURPOSE:          Kernel Security Support Provider Interface
+ * PROGRAMMER:       Pierre Schweitzer 
+ */
+
+/* INCLUDES *****************************************************************/
+
+#include "ksecdd.h"
+
+#define NDEBUG
+#include <debug.h>
+
+/* GLOBALS *****************************************************************/
+
+PEPROCESS KsecSystemProcess;
+
+
+/* FUNCTIONS ****************************************************************/
+
+NTSTATUS NTAPI
+DriverEntry(PDRIVER_OBJECT DriverObject,
+            PUNICODE_STRING RegistryPath)
+{
+    PDEVICE_OBJECT DeviceObject;
+    NTSTATUS Status = STATUS_SUCCESS;
+    UNICODE_STRING DeviceName = RTL_CONSTANT_STRING(DEVICE_NAME);
+
+    KsecSystemProcess = PsGetCurrentProcess();
+
+    KsecInitializeFunctionPointers(DriverObject);
+
+    Status = IoCreateDevice(DriverObject,
+                            0,
+                            &DeviceName,
+                            FILE_DEVICE_KSEC,
+                            FILE_DEVICE_SECURE_OPEN,
+                            FALSE,
+                            &DeviceObject);
+
+    return Status;
+}
+
+VOID NTAPI 
+KsecInitializeFunctionPointers(PDRIVER_OBJECT DriverObject)
+{
+  DriverObject->MajorFunction[IRP_MJ_CREATE]                   = KsecDispatch;
+  DriverObject->MajorFunction[IRP_MJ_CLOSE]                    = KsecDispatch;
+  DriverObject->MajorFunction[IRP_MJ_READ]                     = KsecDispatch;
+  DriverObject->MajorFunction[IRP_MJ_WRITE]                    = KsecDispatch;
+  DriverObject->MajorFunction[IRP_MJ_QUERY_INFORMATION]        = KsecDispatch;
+  DriverObject->MajorFunction[IRP_MJ_QUERY_VOLUME_INFORMATION] = KsecDispatch;
+  DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL ]          = KsecDispatch;
+    
+  return;
+}

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.c
------------------------------------------------------------------------------
    svn:eol-style = native

Added: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.h
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.h?rev=37371&view=auto
==============================================================================
--- branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.h (added)
+++ branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.h [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -1,0 +1,20 @@
+#ifndef KSECDD_H
+#define KSECDD_H
+
+#include <ntddk.h>
+
+#define DEVICE_NAME L"\\Device\\KsecDD"
+
+/* dispatch.c */
+
+NTSTATUS NTAPI
+KsecDispatch(PDEVICE_OBJECT DeviceObject, PIRP Irp);
+
+/* ksecdd.c */
+
+DRIVER_INITIALIZE DriverEntry;
+
+VOID NTAPI
+KsecInitializeFunctionPointers(PDRIVER_OBJECT DriverObject);
+
+#endif /* KSECDD_H */

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.h
------------------------------------------------------------------------------
    svn:eol-style = native

Added: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rbuild
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rbuild?rev=37371&view=auto
==============================================================================
--- branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rbuild (added)
+++ branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rbuild [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -1,0 +1,12 @@
+<?xml version="1.0"?>
+<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
+<module name="ksecdd" type="kernelmodedriver" installbase="system32/drivers" installname="ksecdd.sys">
+	<bootstrap installbase="$(CDOUTPUT)" />
+	<include base="ksecdd">.</include>
+	<library>ntoskrnl</library>
+	<library>hal</library>
+	<file>dispatch.c</file>
+	<file>ksecdd.c</file>
+	<file>ksecdd.rc</file>
+	<pch>ksecdd.h</pch>
+</module>

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rbuild
------------------------------------------------------------------------------
    svn:eol-style = native

Added: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rc
URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rc?rev=37371&view=auto
==============================================================================
--- branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rc (added)
+++ branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rc [iso-8859-1] Sat Nov 15 07:33:13 2008
@@ -1,0 +1,6 @@
+
+#define REACTOS_VERSION_DLL
+#define REACTOS_STR_FILE_DESCRIPTION	"Kernel Security Support Provider Interface\0"
+#define REACTOS_STR_INTERNAL_NAME	"ksecdd\0"
+#define REACTOS_STR_ORIGINAL_FILENAME	"ksecdd.sys\0"
+#include <reactos/version.rc>

Propchange: branches/pierre-fsd/drivers/filesystems/ksecdd/ksecdd.rc
------------------------------------------------------------------------------
    svn:eol-style = native



More information about the Ros-diffs mailing list