Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers...
[reactos.git] / reactos / drivers / filesystems / npfs / npfs.c
diff --git a/reactos/drivers/filesystems/npfs/npfs.c b/reactos/drivers/filesystems/npfs/npfs.c
deleted file mode 100644 (file)
index f166300..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
-* COPYRIGHT:  See COPYING in the top level directory
-* PROJECT:    ReactOS kernel
-* FILE:       drivers/filesystems/npfs/npfs.c
-* PURPOSE:    Named pipe filesystem
-* PROGRAMMER: David Welch <welch@cwcom.net>
-*/
-
-/* INCLUDES ******************************************************************/
-
-#include "npfs.h"
-
-#define NDEBUG
-#include <debug.h>
-
-/* FUNCTIONS *****************************************************************/
-
-NTSTATUS NTAPI
-DriverEntry(PDRIVER_OBJECT DriverObject,
-            PUNICODE_STRING RegistryPath)
-{
-    PDEVICE_OBJECT DeviceObject;
-    UNICODE_STRING DeviceName;
-    PNPFS_VCB Vcb;
-    PNPFS_FCB Fcb;
-    NTSTATUS Status;
-
-    UNREFERENCED_PARAMETER(RegistryPath);
-
-    DPRINT("Named Pipe FSD 0.0.2\n");
-
-    ASSERT (sizeof(NPFS_CONTEXT) <= FIELD_OFFSET(IRP, Tail.Overlay.DriverContext));
-    ASSERT (sizeof(NPFS_WAITER_ENTRY) <= FIELD_OFFSET(IRP, Tail.Overlay.DriverContext));
-
-    DriverObject->MajorFunction[IRP_MJ_CREATE] = NpfsCreate;
-    DriverObject->MajorFunction[IRP_MJ_CREATE_NAMED_PIPE] =
-        NpfsCreateNamedPipe;
-    DriverObject->MajorFunction[IRP_MJ_CLOSE] = NpfsClose;
-    DriverObject->MajorFunction[IRP_MJ_READ] = NpfsRead;
-    DriverObject->MajorFunction[IRP_MJ_WRITE] = NpfsWrite;
-    DriverObject->MajorFunction[IRP_MJ_QUERY_INFORMATION] =
-        NpfsQueryInformation;
-    DriverObject->MajorFunction[IRP_MJ_SET_INFORMATION] =
-        NpfsSetInformation;
-    DriverObject->MajorFunction[IRP_MJ_QUERY_VOLUME_INFORMATION] =
-        NpfsQueryVolumeInformation;
-    DriverObject->MajorFunction[IRP_MJ_CLEANUP] = NpfsCleanup;
-    DriverObject->MajorFunction[IRP_MJ_FLUSH_BUFFERS] = NpfsFlushBuffers;
-    DriverObject->MajorFunction[IRP_MJ_DIRECTORY_CONTROL] =
-        NpfsDirectoryControl;
-    DriverObject->MajorFunction[IRP_MJ_FILE_SYSTEM_CONTROL] =
-        NpfsFileSystemControl;
-    //   DriverObject->MajorFunction[IRP_MJ_QUERY_SECURITY] =
-    //     NpfsQuerySecurity;
-    //   DriverObject->MajorFunction[IRP_MJ_SET_SECURITY] =
-    //     NpfsSetSecurity;
-
-    DriverObject->DriverUnload = NULL;
-
-    RtlInitUnicodeString(&DeviceName, L"\\Device\\NamedPipe");
-    Status = IoCreateDevice(DriverObject,
-        sizeof(NPFS_VCB),
-        &DeviceName,
-        FILE_DEVICE_NAMED_PIPE,
-        0,
-        FALSE,
-        &DeviceObject);
-    if (!NT_SUCCESS(Status))
-    {
-        DPRINT1("Failed to create named pipe device! (Status %lx)\n", Status);
-        return Status;
-    }
-
-    /* Initialize the device object */
-    DeviceObject->Flags |= DO_DIRECT_IO;
-    DeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
-
-    /* Initialize the Volume Control Block (VCB) */
-    Vcb = (PNPFS_VCB)DeviceObject->DeviceExtension;
-    InitializeListHead(&Vcb->PipeListHead);
-    InitializeListHead(&Vcb->ThreadListHead);
-    KeInitializeMutex(&Vcb->PipeListLock, 0);
-    Vcb->EmptyWaiterCount = 0;
-
-    /* set the size quotas */
-    Vcb->MinQuota = PAGE_SIZE;
-    Vcb->DefaultQuota = 8 * PAGE_SIZE;
-    Vcb->MaxQuota = 64 * PAGE_SIZE;
-
-    /* Create the device FCB */
-    Fcb = ExAllocatePoolWithTag(NonPagedPool, sizeof(NPFS_FCB), TAG_NPFS_FCB);
-    if (!Fcb)
-    {
-        DPRINT1("Out of memory for device FCB!\n");
-        IoDeleteDevice(DeviceObject);
-        return STATUS_INSUFFICIENT_RESOURCES;
-    }
-    Fcb->Type = FCB_DEVICE;
-    Fcb->Vcb = Vcb;
-    Fcb->RefCount = 1;
-    Vcb->DeviceFcb = Fcb;
-
-    /* Create the root directory FCB */
-    Fcb = ExAllocatePoolWithTag(NonPagedPool, sizeof(NPFS_FCB), TAG_NPFS_FCB);
-    if (!Fcb)
-    {
-        DPRINT1("Out of memory for root FCB!\n");
-        IoDeleteDevice(DeviceObject);
-        ExFreePoolWithTag(Vcb->DeviceFcb, TAG_NPFS_FCB);
-        return STATUS_INSUFFICIENT_RESOURCES;
-    }
-    Fcb->Type = FCB_DIRECTORY;
-    Fcb->Vcb = Vcb;
-    Fcb->RefCount = 1;
-    Vcb->RootFcb = Fcb;
-
-    return STATUS_SUCCESS;
-}
-
-
-FCB_TYPE
-NpfsGetFcb(PFILE_OBJECT FileObject,
-           PNPFS_FCB *Fcb)
-{
-    PNPFS_FCB LocalFcb = NULL;
-    FCB_TYPE FcbType = FCB_INVALID;
-
-    _SEH2_TRY
-    {
-        LocalFcb = (PNPFS_FCB)FileObject->FsContext;
-        FcbType = LocalFcb->Type;
-    }
-    _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
-    {
-        LocalFcb = NULL;
-        FcbType = FCB_INVALID;
-    }
-    _SEH2_END;
-
-    *Fcb = LocalFcb;
-
-    return FcbType;
-}
-
-
-CCB_TYPE
-NpfsGetCcb(PFILE_OBJECT FileObject,
-           PNPFS_CCB *Ccb)
-{
-    PNPFS_CCB LocalCcb = NULL;
-    CCB_TYPE CcbType = CCB_INVALID;
-
-    _SEH2_TRY
-    {
-        LocalCcb = (PNPFS_CCB)FileObject->FsContext2;
-        CcbType = LocalCcb->Type;
-    }
-    _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
-    {
-        LocalCcb = NULL;
-        CcbType = CCB_INVALID;
-    }
-    _SEH2_END;
-
-    *Ccb = LocalCcb;
-
-    return CcbType;
-}
-
-/* EOF */