mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 20:35:43 +00:00
[BLUE]
- FastIoDispatch is not optional for file system drivers! svn path=/trunk/; revision=67495
This commit is contained in:
parent
e03d4423da
commit
a1283b2745
1 changed files with 55 additions and 0 deletions
|
@ -88,6 +88,8 @@ static const UCHAR DefaultPalette[] =
|
|||
0xFF, 0xFF, 0xFF
|
||||
};
|
||||
|
||||
static FAST_IO_DISPATCH ScrFastIoDispatch;
|
||||
|
||||
/* FUNCTIONS **************************************************************/
|
||||
|
||||
static VOID FASTCALL
|
||||
|
@ -818,6 +820,55 @@ ScrDispatch(PDEVICE_OBJECT DeviceObject,
|
|||
return (Status);
|
||||
}
|
||||
|
||||
static FAST_IO_READ ScrFastIoRead;
|
||||
static
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
ScrFastIoRead(
|
||||
_In_ PFILE_OBJECT FileObject,
|
||||
_In_ PLARGE_INTEGER FileOffset,
|
||||
_In_ ULONG Length,
|
||||
_In_ BOOLEAN Wait,
|
||||
_In_ ULONG LockKey,
|
||||
_Out_ PVOID Buffer,
|
||||
_Out_ PIO_STATUS_BLOCK IoStatus,
|
||||
_In_ PDEVICE_OBJECT DeviceObject)
|
||||
{
|
||||
DBG_UNREFERENCED_PARAMETER(FileObject);
|
||||
DBG_UNREFERENCED_PARAMETER(FileOffset);
|
||||
DBG_UNREFERENCED_PARAMETER(Length);
|
||||
DBG_UNREFERENCED_PARAMETER(Wait);
|
||||
DBG_UNREFERENCED_PARAMETER(LockKey);
|
||||
DBG_UNREFERENCED_PARAMETER(Buffer);
|
||||
DBG_UNREFERENCED_PARAMETER(IoStatus);
|
||||
DBG_UNREFERENCED_PARAMETER(DeviceObject);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static FAST_IO_WRITE ScrFastIoWrite;
|
||||
static
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
ScrFastIoWrite(
|
||||
_In_ PFILE_OBJECT FileObject,
|
||||
_In_ PLARGE_INTEGER FileOffset,
|
||||
_In_ ULONG Length,
|
||||
_In_ BOOLEAN Wait,
|
||||
_In_ ULONG LockKey,
|
||||
_In_ PVOID Buffer,
|
||||
_Out_ PIO_STATUS_BLOCK IoStatus,
|
||||
_In_ PDEVICE_OBJECT DeviceObject)
|
||||
{
|
||||
DBG_UNREFERENCED_PARAMETER(FileObject);
|
||||
DBG_UNREFERENCED_PARAMETER(FileOffset);
|
||||
DBG_UNREFERENCED_PARAMETER(Length);
|
||||
DBG_UNREFERENCED_PARAMETER(Wait);
|
||||
DBG_UNREFERENCED_PARAMETER(LockKey);
|
||||
DBG_UNREFERENCED_PARAMETER(Buffer);
|
||||
DBG_UNREFERENCED_PARAMETER(IoStatus);
|
||||
DBG_UNREFERENCED_PARAMETER(DeviceObject);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Module entry point
|
||||
|
@ -838,6 +889,10 @@ DriverEntry (PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)
|
|||
DriverObject->MajorFunction[IRP_MJ_WRITE] = ScrWrite;
|
||||
DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL ] = ScrIoControl;
|
||||
|
||||
ScrFastIoDispatch.FastIoRead = ScrFastIoRead;
|
||||
ScrFastIoDispatch.FastIoWrite = ScrFastIoWrite;
|
||||
DriverObject->FastIoDispatch = &ScrFastIoDispatch;
|
||||
|
||||
Status = IoCreateDevice (DriverObject,
|
||||
sizeof(DEVICE_EXTENSION),
|
||||
&DeviceName,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue