Build file system drivers w/ W32API headers.

svn path=/trunk/; revision=15972
This commit is contained in:
Filip Navara 2005-06-17 12:29:33 +00:00
parent b0d3f5b991
commit e0463986d3
33 changed files with 73 additions and 60 deletions

View file

@ -213,7 +213,9 @@ typedef struct _CCB
ULONG LastOffset; ULONG LastOffset;
} CCB, *PCCB; } CCB, *PCCB;
#ifndef TAG
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#endif
#define TAG_CCB TAG('I', 'C', 'C', 'B') #define TAG_CCB TAG('I', 'C', 'C', 'B')

View file

@ -1,6 +1,7 @@
<module name="cdfs" type="kernelmodedriver" installbase="system32/drivers" installname="cdfs.sys"> <module name="cdfs" type="kernelmodedriver" installbase="system32/drivers" installname="cdfs.sys">
<bootstrap base="reactos" /> <bootstrap base="reactos" />
<include base="cdfs">.</include> <include base="cdfs">.</include>
<define name="__USE_W32API" />
<library>ntoskrnl</library> <library>ntoskrnl</library>
<library>hal</library> <library>hal</library>
<file>cdfs.c</file> <file>cdfs.c</file>

View file

@ -29,6 +29,7 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ddk/ntddk.h>
#include <ntddcdrm.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>

View file

@ -39,6 +39,7 @@
/* DEFINES ******************************************************************/ /* DEFINES ******************************************************************/
#define ROUND_DOWN(N, S) (((N) / (S)) * (S)) #define ROUND_DOWN(N, S) (((N) / (S)) * (S))
#define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S))
/* FUNCTIONS ****************************************************************/ /* FUNCTIONS ****************************************************************/

View file

@ -29,7 +29,6 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ddk/ntddk.h>
#include <ntos/kefuncs.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>
@ -39,7 +38,6 @@
/* MACROS *******************************************************************/ /* MACROS *******************************************************************/
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#define TAG_FCB TAG('I', 'F', 'C', 'B') #define TAG_FCB TAG('I', 'F', 'C', 'B')
#define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S)) #define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S))

View file

@ -29,6 +29,7 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ddk/ntddk.h>
#include <ntddcdrm.h>
#include <ntos/minmax.h> #include <ntos/minmax.h>
#define NDEBUG #define NDEBUG

View file

@ -27,8 +27,9 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <rosrtl/string.h> #include <ntdddisk.h>
#include <ntddcdrm.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>
@ -102,7 +103,8 @@ FsRecCdfsFsControl(IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
PIO_STACK_LOCATION Stack; PIO_STACK_LOCATION Stack;
UNICODE_STRING RegistryPath; static UNICODE_STRING RegistryPath =
RTL_CONSTANT_STRING(L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Cdfs");
NTSTATUS Status; NTSTATUS Status;
Stack = IoGetCurrentIrpStackLocation(Irp); Stack = IoGetCurrentIrpStackLocation(Irp);
@ -121,8 +123,6 @@ FsRecCdfsFsControl(IN PDEVICE_OBJECT DeviceObject,
case IRP_MN_LOAD_FILE_SYSTEM: case IRP_MN_LOAD_FILE_SYSTEM:
DPRINT("Cdfs: IRP_MN_LOAD_FILE_SYSTEM\n"); DPRINT("Cdfs: IRP_MN_LOAD_FILE_SYSTEM\n");
RtlRosInitUnicodeStringFromLiteral(&RegistryPath,
L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Cdfs");
Status = ZwLoadDriver(&RegistryPath); Status = ZwLoadDriver(&RegistryPath);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {

View file

@ -27,8 +27,8 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <rosrtl/string.h> #include <ntdddisk.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>
@ -186,7 +186,8 @@ FsRecVfatFsControl(IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
PIO_STACK_LOCATION Stack; PIO_STACK_LOCATION Stack;
UNICODE_STRING RegistryPath; static UNICODE_STRING RegistryPath =
RTL_CONSTANT_STRING(L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Vfatfs");
NTSTATUS Status; NTSTATUS Status;
Stack = IoGetCurrentIrpStackLocation(Irp); Stack = IoGetCurrentIrpStackLocation(Irp);
@ -205,8 +206,6 @@ FsRecVfatFsControl(IN PDEVICE_OBJECT DeviceObject,
case IRP_MN_LOAD_FILE_SYSTEM: case IRP_MN_LOAD_FILE_SYSTEM:
DPRINT("FAT: IRP_MN_LOAD_FILE_SYSTEM\n"); DPRINT("FAT: IRP_MN_LOAD_FILE_SYSTEM\n");
RtlRosInitUnicodeStringFromLiteral(&RegistryPath,
L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Vfatfs");
Status = ZwLoadDriver(&RegistryPath); Status = ZwLoadDriver(&RegistryPath);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {

View file

@ -27,7 +27,7 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>
@ -154,7 +154,7 @@ FsRecRegisterFs(PDRIVER_OBJECT DriverObject,
NULL, NULL,
0, 0,
FILE_SHARE_READ | FILE_SHARE_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE,
OPEN_EXISTING, FILE_OPEN,
0, 0,
NULL, NULL,
0); 0);

View file

@ -1,5 +1,6 @@
<module name="fs_rec" type="kernelmodedriver" installbase="system32/drivers" installname="fs_rec.sys"> <module name="fs_rec" type="kernelmodedriver" installbase="system32/drivers" installname="fs_rec.sys">
<include base="fs_rec">.</include> <include base="fs_rec">.</include>
<define name="__USE_W32API" />
<library>ntoskrnl</library> <library>ntoskrnl</library>
<library>hal</library> <library>hal</library>
<file>blockdev.c</file> <file>blockdev.c</file>

View file

@ -27,7 +27,8 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <ntdddisk.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>
@ -99,7 +100,8 @@ FsRecNtfsFsControl(IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
PIO_STACK_LOCATION Stack; PIO_STACK_LOCATION Stack;
UNICODE_STRING RegistryPath; static UNICODE_STRING RegistryPath =
RTL_CONSTANT_STRING(L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Ntfs");
NTSTATUS Status; NTSTATUS Status;
Stack = IoGetCurrentIrpStackLocation(Irp); Stack = IoGetCurrentIrpStackLocation(Irp);
@ -119,8 +121,6 @@ FsRecNtfsFsControl(IN PDEVICE_OBJECT DeviceObject,
case IRP_MN_LOAD_FILE_SYSTEM: case IRP_MN_LOAD_FILE_SYSTEM:
DPRINT("NTFS: IRP_MN_LOAD_FILE_SYSTEM\n"); DPRINT("NTFS: IRP_MN_LOAD_FILE_SYSTEM\n");
RtlInitUnicodeString(&RegistryPath,
L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Ntfs");
Status = ZwLoadDriver(&RegistryPath); Status = ZwLoadDriver(&RegistryPath);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {

View file

@ -27,8 +27,9 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <rosrtl/string.h> #include <ntdddisk.h>
#include <ntddcdrm.h>
#define NDEBUG #define NDEBUG
#include <debug.h> #include <debug.h>
@ -258,7 +259,8 @@ FsRecUdfsFsControl(IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp) IN PIRP Irp)
{ {
PIO_STACK_LOCATION Stack; PIO_STACK_LOCATION Stack;
UNICODE_STRING RegistryPath; static UNICODE_STRING RegistryPath =
RTL_CONSTANT_STRING(L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Udfs");
NTSTATUS Status; NTSTATUS Status;
Stack = IoGetCurrentIrpStackLocation(Irp); Stack = IoGetCurrentIrpStackLocation(Irp);
@ -277,8 +279,6 @@ FsRecUdfsFsControl(IN PDEVICE_OBJECT DeviceObject,
case IRP_MN_LOAD_FILE_SYSTEM: case IRP_MN_LOAD_FILE_SYSTEM:
DPRINT("Udfs: IRP_MN_LOAD_FILE_SYSTEM\n"); DPRINT("Udfs: IRP_MN_LOAD_FILE_SYSTEM\n");
RtlRosInitUnicodeStringFromLiteral(&RegistryPath,
L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\Udfs");
Status = ZwLoadDriver(&RegistryPath); Status = ZwLoadDriver(&RegistryPath);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {

View file

@ -9,8 +9,9 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <ddk/iotypes.h> /* FIXME: Temporary Until NDK implemented */ /* FIXME: The headers are broken! */
#undef CreateMailslot
#include "msfs.h" #include "msfs.h"
#define NDEBUG #define NDEBUG
@ -137,7 +138,10 @@ MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject,
return(STATUS_NO_MEMORY); return(STATUS_NO_MEMORY);
} }
if (!RtlCreateUnicodeString(&Mailslot->Name, FileObject->FileName.Buffer)) Mailslot->Name.Length = FileObject->FileName.Length;
Mailslot->Name.MaximumLength = Mailslot->Name.Length + sizeof(UNICODE_NULL);
Mailslot->Name.Buffer = ExAllocatePool(NonPagedPool, Mailslot->Name.MaximumLength);
if (Mailslot->Name.Buffer == NULL)
{ {
ExFreePool(Mailslot); ExFreePool(Mailslot);
@ -149,6 +153,8 @@ MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject,
return(STATUS_NO_MEMORY); return(STATUS_NO_MEMORY);
} }
RtlCopyUnicodeString(&Mailslot->Name, &FileObject->FileName);
Fcb = ExAllocatePool(NonPagedPool, sizeof(MSFS_FCB)); Fcb = ExAllocatePool(NonPagedPool, sizeof(MSFS_FCB));
if (Fcb == NULL) if (Fcb == NULL)
{ {

View file

@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include "msfs.h" #include "msfs.h"
#define NDEBUG #define NDEBUG
@ -31,19 +31,19 @@ MsfsQueryMailslotInformation(PMSFS_FCB Fcb,
Mailslot = Fcb->Mailslot; Mailslot = Fcb->Mailslot;
Buffer->MaxMessageSize = Mailslot->MaxMessageSize; Buffer->MaximumMessageSize = Mailslot->MaxMessageSize;
Buffer->Timeout = Mailslot->TimeOut; Buffer->ReadTimeout = Mailslot->TimeOut;
KeAcquireSpinLock(&Mailslot->MessageListLock, &oldIrql); KeAcquireSpinLock(&Mailslot->MessageListLock, &oldIrql);
Buffer->MessageCount = Mailslot->MessageCount; Buffer->MessagesAvailable = Mailslot->MessageCount;
if (Mailslot->MessageCount == 0) if (Mailslot->MessageCount == 0)
{ {
Buffer->NextSize = 0; Buffer->NextMessageSize = 0;
} }
else else
{ {
/* FIXME: read size of first message (head) */ /* FIXME: read size of first message (head) */
Buffer->NextSize = 0; Buffer->NextMessageSize = 0;
} }
KeReleaseSpinLock(&Mailslot->MessageListLock, oldIrql); KeReleaseSpinLock(&Mailslot->MessageListLock, oldIrql);
@ -61,7 +61,7 @@ MsfsSetMailslotInformation(PMSFS_FCB Fcb,
if (*BufferLength < sizeof(FILE_MAILSLOT_SET_INFORMATION)) if (*BufferLength < sizeof(FILE_MAILSLOT_SET_INFORMATION))
return(STATUS_BUFFER_OVERFLOW); return(STATUS_BUFFER_OVERFLOW);
Fcb->Mailslot->TimeOut = Buffer->Timeout; Fcb->Mailslot->TimeOut = Buffer->ReadTimeout;
return(STATUS_SUCCESS); return(STATUS_SUCCESS);
} }

View file

@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include "msfs.h" #include "msfs.h"
//#define NDEBUG //#define NDEBUG

View file

@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include "msfs.h" #include "msfs.h"
#define NDEBUG #define NDEBUG

View file

@ -1,5 +1,6 @@
<module name="msfs" type="kernelmodedriver" installbase="system32/drivers" installname="msfs.sys"> <module name="msfs" type="kernelmodedriver" installbase="system32/drivers" installname="msfs.sys">
<include base="msfs">.</include> <include base="msfs">.</include>
<define name="__USE_W32API" />
<library>ntoskrnl</library> <library>ntoskrnl</library>
<library>hal</library> <library>hal</library>
<file>create.c</file> <file>create.c</file>

View file

@ -9,8 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <ntos/minmax.h>
#include "msfs.h" #include "msfs.h"
#define NDEBUG #define NDEBUG

View file

@ -27,7 +27,7 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
//#define NDEBUG //#define NDEBUG
#include <debug.h> #include <debug.h>

View file

@ -1,10 +1,9 @@
#ifndef MUP_H #ifndef MUP_H
#define MUP_H #define MUP_H
#include <ddk/ntifs.h> #ifndef TAG
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#endif
#define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S)) #define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S))

View file

@ -1,5 +1,6 @@
<module name="mup" type="kernelmodedriver" installbase="system32/drivers" installname="mup.sys"> <module name="mup" type="kernelmodedriver" installbase="system32/drivers" installname="mup.sys">
<include base="mup">.</include> <include base="mup">.</include>
<define name="__USE_W32API" />
<library>ntoskrnl</library> <library>ntoskrnl</library>
<library>hal</library> <library>hal</library>
<file>create.c</file> <file>create.c</file>

View file

@ -9,8 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include "npfs.h" #include "npfs.h"
#define NDEBUG #define NDEBUG
@ -387,7 +386,10 @@ NpfsCreateNamedPipe(PDEVICE_OBJECT DeviceObject,
return STATUS_NO_MEMORY; return STATUS_NO_MEMORY;
} }
if (RtlCreateUnicodeString(&Pipe->PipeName, FileObject->FileName.Buffer) == FALSE) Pipe->PipeName.Length = FileObject->FileName.Length;
Pipe->PipeName.MaximumLength = Pipe->PipeName.Length + sizeof(UNICODE_NULL);
Pipe->PipeName.Buffer = ExAllocatePool(NonPagedPool, Pipe->PipeName.MaximumLength);
if (Pipe->PipeName.Buffer == NULL)
{ {
KeUnlockMutex(&DeviceExt->PipeListLock); KeUnlockMutex(&DeviceExt->PipeListLock);
ExFreePool(Pipe); ExFreePool(Pipe);
@ -398,6 +400,8 @@ NpfsCreateNamedPipe(PDEVICE_OBJECT DeviceObject,
return STATUS_NO_MEMORY; return STATUS_NO_MEMORY;
} }
RtlCopyUnicodeString(&Pipe->PipeName, &FileObject->FileName);
InitializeListHead(&Pipe->ServerFcbListHead); InitializeListHead(&Pipe->ServerFcbListHead);
InitializeListHead(&Pipe->ClientFcbListHead); InitializeListHead(&Pipe->ClientFcbListHead);
InitializeListHead(&Pipe->WaiterListHead); InitializeListHead(&Pipe->WaiterListHead);

View file

@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include "npfs.h" #include "npfs.h"
#define NDEBUG #define NDEBUG

View file

@ -10,7 +10,8 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <napi/npipe.h>
#include "npfs.h" #include "npfs.h"
#define NDEBUG #define NDEBUG

View file

@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include "npfs.h" #include "npfs.h"
#define NDEBUG #define NDEBUG
@ -28,8 +28,8 @@ DriverEntry(PDRIVER_OBJECT DriverObject,
DPRINT("Named Pipe FSD 0.0.2\n"); DPRINT("Named Pipe FSD 0.0.2\n");
ASSERT (sizeof(NPFS_CONTEXT) <= sizeof (((PIRP)NULL)->Tail.Overlay.DriverContext)); ASSERT (sizeof(NPFS_CONTEXT) <= FIELD_OFFSET(IRP, Tail.Overlay.DriverContext));
ASSERT (sizeof(NPFS_WAITER_ENTRY) <= sizeof(((PIRP)NULL)->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] = NpfsCreate;
DriverObject->MajorFunction[IRP_MJ_CREATE_NAMED_PIPE] = DriverObject->MajorFunction[IRP_MJ_CREATE_NAMED_PIPE] =

View file

@ -94,6 +94,7 @@ extern NPAGED_LOOKASIDE_LIST NpfsPipeDataLookasideList;
#define KeUnlockMutex(x) KeReleaseMutex(x, FALSE); #define KeUnlockMutex(x) KeReleaseMutex(x, FALSE);
#define PAGE_ROUND_UP(x) ( (((ULONG_PTR)x)%PAGE_SIZE) ? ((((ULONG_PTR)x)&(~(PAGE_SIZE-1)))+PAGE_SIZE) : ((ULONG_PTR)x) )
NTSTATUS STDCALL NpfsCreate(PDEVICE_OBJECT DeviceObject, PIRP Irp); NTSTATUS STDCALL NpfsCreate(PDEVICE_OBJECT DeviceObject, PIRP Irp);
NTSTATUS STDCALL NpfsCreateNamedPipe(PDEVICE_OBJECT DeviceObject, PIRP Irp); NTSTATUS STDCALL NpfsCreateNamedPipe(PDEVICE_OBJECT DeviceObject, PIRP Irp);

View file

@ -1,5 +1,6 @@
<module name="npfs" type="kernelmodedriver" installbase="system32/drivers" installname="npfs.sys"> <module name="npfs" type="kernelmodedriver" installbase="system32/drivers" installname="npfs.sys">
<include base="npfs">.</include> <include base="npfs">.</include>
<define name="__USE_W32API" />
<library>ntoskrnl</library> <library>ntoskrnl</library>
<library>hal</library> <library>hal</library>
<file>create.c</file> <file>create.c</file>

View file

@ -9,7 +9,7 @@
/* INCLUDES ******************************************************************/ /* INCLUDES ******************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <rosrtl/minmax.h> #include <rosrtl/minmax.h>
#include "npfs.h" #include "npfs.h"

View file

@ -9,7 +9,7 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ntifs.h>
#include <wchar.h> #include <wchar.h>
#define NDEBUG #define NDEBUG

View file

@ -27,9 +27,6 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h>
#include <ntos/kefuncs.h>
#include "ntfs.h" #include "ntfs.h"
#define NDEBUG #define NDEBUG

View file

@ -28,14 +28,12 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include "ntfs.h"
#include <ntos/minmax.h> #include <ntdddisk.h>
//#define NDEBUG //#define NDEBUG
#include <debug.h> #include <debug.h>
#include "ntfs.h"
/* FUNCTIONS ****************************************************************/ /* FUNCTIONS ****************************************************************/
static NTSTATUS static NTSTATUS

View file

@ -10,7 +10,9 @@
((pDeviceExt)->NtfsInfo.BytesPerCluster > PAGE_SIZE ? \ ((pDeviceExt)->NtfsInfo.BytesPerCluster > PAGE_SIZE ? \
(pDeviceExt)->NtfsInfo.BytesPerCluster : PAGE_SIZE) (pDeviceExt)->NtfsInfo.BytesPerCluster : PAGE_SIZE)
#ifndef TAG
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#endif
#define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S)) #define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S))
@ -128,8 +130,6 @@ typedef struct _CCB
ULONG LastOffset; ULONG LastOffset;
} CCB, *PCCB; } CCB, *PCCB;
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
#define TAG_CCB TAG('I', 'C', 'C', 'B') #define TAG_CCB TAG('I', 'C', 'C', 'B')
typedef struct typedef struct

View file

@ -1,6 +1,7 @@
<module name="ntfs" type="kernelmodedriver" installbase="system32/drivers" installname="ntfs.sys"> <module name="ntfs" type="kernelmodedriver" installbase="system32/drivers" installname="ntfs.sys">
<bootstrap base="reactos" /> <bootstrap base="reactos" />
<include base="ntfs">.</include> <include base="ntfs">.</include>
<define name="__USE_W32API" />
<library>ntoskrnl</library> <library>ntoskrnl</library>
<library>hal</library> <library>hal</library>
<file>attrib.c</file> <file>attrib.c</file>