This commit is contained in:
Bill Zissimopoulos 2015-11-22 12:23:41 -08:00
parent ccf76a23c7
commit 80d6afc7b6
15 changed files with 121 additions and 169 deletions

View File

@ -6,9 +6,12 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsctlCleanup; static NTSTATUS FspFsctlCleanup(
static DRIVER_DISPATCH FspFsvrtCleanup; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static DRIVER_DISPATCH FspFsvolCleanup; static NTSTATUS FspFsvrtCleanup(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolCleanup(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspCleanup; DRIVER_DISPATCH FspCleanup;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -18,33 +21,24 @@ DRIVER_DISPATCH FspCleanup;
#pragma alloc_text(PAGE, FspCleanup) #pragma alloc_text(PAGE, FspCleanup)
#endif #endif
static static NTSTATUS FspFsctlCleanup(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsctlCleanup(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
NTSTATUS Result = STATUS_SUCCESS; NTSTATUS Result = STATUS_SUCCESS;
Irp->IoStatus.Information = 0; Irp->IoStatus.Information = 0;
return Result; return Result;
} }
static static NTSTATUS FspFsvrtCleanup(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvrtCleanup(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
NTSTATUS Result = STATUS_SUCCESS; NTSTATUS Result = STATUS_SUCCESS;
Irp->IoStatus.Information = 0; Irp->IoStatus.Information = 0;
return Result; return Result;
} }
static static NTSTATUS FspFsvolCleanup(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolCleanup(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -61,11 +55,11 @@ FspCleanup(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolCleanup(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolCleanup(DeviceObject, Irp, IrpSp));
case FspFsvrtDeviceExtensionKind: case FspFsvrtDeviceExtensionKind:
FSP_RETURN(Result = FspFsvrtCleanup(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvrtCleanup(DeviceObject, Irp, IrpSp));
case FspFsctlDeviceExtensionKind: case FspFsctlDeviceExtensionKind:
FSP_RETURN(Result = FspFsctlCleanup(DeviceObject, Irp)); FSP_RETURN(Result = FspFsctlCleanup(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,9 +6,12 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsctlClose; static NTSTATUS FspFsctlClose(
static DRIVER_DISPATCH FspFsvrtClose; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static DRIVER_DISPATCH FspFsvolClose; static NTSTATUS FspFsvrtClose(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolClose(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspClose; DRIVER_DISPATCH FspClose;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -18,33 +21,24 @@ DRIVER_DISPATCH FspClose;
#pragma alloc_text(PAGE, FspClose) #pragma alloc_text(PAGE, FspClose)
#endif #endif
static static NTSTATUS FspFsctlClose(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsctlClose(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
NTSTATUS Result = STATUS_SUCCESS; NTSTATUS Result = STATUS_SUCCESS;
Irp->IoStatus.Information = 0; Irp->IoStatus.Information = 0;
return Result; return Result;
} }
static static NTSTATUS FspFsvrtClose(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvrtClose(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
NTSTATUS Result = STATUS_SUCCESS; NTSTATUS Result = STATUS_SUCCESS;
Irp->IoStatus.Information = 0; Irp->IoStatus.Information = 0;
return Result; return Result;
} }
static static NTSTATUS FspFsvolClose(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolClose(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -61,11 +55,11 @@ FspClose(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolClose(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolClose(DeviceObject, Irp, IrpSp));
case FspFsvrtDeviceExtensionKind: case FspFsvrtDeviceExtensionKind:
FSP_RETURN(Result = FspFsvrtClose(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvrtClose(DeviceObject, Irp, IrpSp));
case FspFsctlDeviceExtensionKind: case FspFsctlDeviceExtensionKind:
FSP_RETURN(Result = FspFsctlClose(DeviceObject, Irp)); FSP_RETURN(Result = FspFsctlClose(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,9 +6,12 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsctlCreate; static NTSTATUS FspFsctlCreate(
static DRIVER_DISPATCH FspFsvrtCreate; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static DRIVER_DISPATCH FspFsvolCreate; static NTSTATUS FspFsvrtCreate(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolCreate(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspCreate; DRIVER_DISPATCH FspCreate;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -18,33 +21,24 @@ DRIVER_DISPATCH FspCreate;
#pragma alloc_text(PAGE, FspCreate) #pragma alloc_text(PAGE, FspCreate)
#endif #endif
static static NTSTATUS FspFsctlCreate(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsctlCreate(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
NTSTATUS Result = STATUS_SUCCESS; NTSTATUS Result = STATUS_SUCCESS;
Irp->IoStatus.Information = FILE_OPENED; Irp->IoStatus.Information = FILE_OPENED;
return Result; return Result;
} }
static static NTSTATUS FspFsvrtCreate(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvrtCreate(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
NTSTATUS Result = STATUS_SUCCESS; NTSTATUS Result = STATUS_SUCCESS;
Irp->IoStatus.Information = FILE_OPENED; Irp->IoStatus.Information = FILE_OPENED;
return Result; return Result;
} }
static static NTSTATUS FspFsvolCreate(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolCreate(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -61,11 +55,11 @@ FspCreate(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolCreate(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolCreate(DeviceObject, Irp, IrpSp));
case FspFsvrtDeviceExtensionKind: case FspFsvrtDeviceExtensionKind:
FSP_RETURN(Result = FspFsvrtCreate(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvrtCreate(DeviceObject, Irp, IrpSp));
case FspFsctlDeviceExtensionKind: case FspFsctlDeviceExtensionKind:
FSP_RETURN(Result = FspFsctlCreate(DeviceObject, Irp)); FSP_RETURN(Result = FspFsctlCreate(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolDeviceControl; static NTSTATUS FspFsvolDeviceControl(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspDeviceControl; DRIVER_DISPATCH FspDeviceControl;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspDeviceControl;
#pragma alloc_text(PAGE, FspDeviceControl) #pragma alloc_text(PAGE, FspDeviceControl)
#endif #endif
static static NTSTATUS FspFsvolDeviceControl(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolDeviceControl(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspDeviceControl(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolDeviceControl(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolDeviceControl(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolDirectoryControl; static NTSTATUS FspFsvolDirectoryControl(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspDirectoryControl; DRIVER_DISPATCH FspDirectoryControl;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspDirectoryControl;
#pragma alloc_text(PAGE, FspDirectoryControl) #pragma alloc_text(PAGE, FspDirectoryControl)
#endif #endif
static static NTSTATUS FspFsvolDirectoryControl(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolDirectoryControl(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspDirectoryControl(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolDirectoryControl(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolDirectoryControl(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -62,7 +62,7 @@
FSP_LEAVE_(FSP_DEBUGLOG_(fmt, " = %s", __VA_ARGS__, NtStatusSym(Result))); return Result FSP_LEAVE_(FSP_DEBUGLOG_(fmt, " = %s", __VA_ARGS__, NtStatusSym(Result))); return Result
#define FSP_ENTER_MJ(...) \ #define FSP_ENTER_MJ(...) \
NTSTATUS Result = STATUS_SUCCESS; \ NTSTATUS Result = STATUS_SUCCESS; \
PIO_STACK_LOCATION IrpSp = IoGetCurrentIrpStackLocation(Irp); (void)IrpSp;\ PIO_STACK_LOCATION IrpSp = IoGetCurrentIrpStackLocation(Irp);\
FSP_ENTER_(__VA_ARGS__) FSP_ENTER_(__VA_ARGS__)
#define FSP_LEAVE_MJ(fmt, ...) \ #define FSP_LEAVE_MJ(fmt, ...) \
FSP_LEAVE_( \ FSP_LEAVE_( \

View File

@ -6,8 +6,10 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolQueryEa; static NTSTATUS FspFsvolQueryEa(
static DRIVER_DISPATCH FspFsvolSetEa; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolSetEa(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspQueryEa; DRIVER_DISPATCH FspQueryEa;
DRIVER_DISPATCH FspSetEa; DRIVER_DISPATCH FspSetEa;
@ -18,20 +20,14 @@ DRIVER_DISPATCH FspSetEa;
#pragma alloc_text(PAGE, FspSetEa) #pragma alloc_text(PAGE, FspSetEa)
#endif #endif
static static NTSTATUS FspFsvolQueryEa(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolQueryEa(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
static static NTSTATUS FspFsvolSetEa(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolSetEa(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -48,7 +44,7 @@ FspQueryEa(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolQueryEa(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolQueryEa(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }
@ -68,7 +64,7 @@ FspSetEa(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolSetEa(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolSetEa(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,8 +6,10 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolQueryInformation; static NTSTATUS FspFsvolQueryInformation(
static DRIVER_DISPATCH FspFsvolSetInformation; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolSetInformation(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspQueryInformation; DRIVER_DISPATCH FspQueryInformation;
DRIVER_DISPATCH FspSetInformation; DRIVER_DISPATCH FspSetInformation;
@ -18,20 +20,14 @@ DRIVER_DISPATCH FspSetInformation;
#pragma alloc_text(PAGE, FspSetInformation) #pragma alloc_text(PAGE, FspSetInformation)
#endif #endif
static static NTSTATUS FspFsvolQueryInformation(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolQueryInformation(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
static static NTSTATUS FspFsvolSetInformation(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolSetInformation(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -48,7 +44,7 @@ FspQueryInformation(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolQueryInformation(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolQueryInformation(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }
@ -68,7 +64,7 @@ FspSetInformation(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolSetInformation(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolSetInformation(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolFlushBuffers; static NTSTATUS FspFsvolFlushBuffers(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspFlushBuffers; DRIVER_DISPATCH FspFlushBuffers;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspFlushBuffers;
#pragma alloc_text(PAGE, FspFlushBuffers) #pragma alloc_text(PAGE, FspFlushBuffers)
#endif #endif
static static NTSTATUS FspFsvolFlushBuffers(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolFlushBuffers(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspFlushBuffers(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolFlushBuffers(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolFlushBuffers(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolLockControl; static NTSTATUS FspFsvolLockControl(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspLockControl; DRIVER_DISPATCH FspLockControl;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspLockControl;
#pragma alloc_text(PAGE, FspLockControl) #pragma alloc_text(PAGE, FspLockControl)
#endif #endif
static static NTSTATUS FspFsvolLockControl(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolLockControl(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspLockControl(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolLockControl(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolLockControl(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolRead; static NTSTATUS FspFsvolRead(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspRead; DRIVER_DISPATCH FspRead;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspRead;
#pragma alloc_text(PAGE, FspRead) #pragma alloc_text(PAGE, FspRead)
#endif #endif
static static NTSTATUS FspFsvolRead(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolRead(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspRead(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolRead(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolRead(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,8 +6,10 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolQuerySecurity; static NTSTATUS FspFsvolQuerySecurity(
static DRIVER_DISPATCH FspFsvolSetSecurity; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolSetSecurity(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspQuerySecurity; DRIVER_DISPATCH FspQuerySecurity;
DRIVER_DISPATCH FspSetSecurity; DRIVER_DISPATCH FspSetSecurity;
@ -18,20 +20,14 @@ DRIVER_DISPATCH FspSetSecurity;
#pragma alloc_text(PAGE, FspSetSecurity) #pragma alloc_text(PAGE, FspSetSecurity)
#endif #endif
static static NTSTATUS FspFsvolQuerySecurity(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolQuerySecurity(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
static static NTSTATUS FspFsvolSetSecurity(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolSetSecurity(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -48,7 +44,7 @@ FspQuerySecurity(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolQuerySecurity(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolQuerySecurity(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }
@ -68,7 +64,7 @@ FspSetSecurity(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolSetSecurity(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolSetSecurity(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolShutdown; static NTSTATUS FspFsvolShutdown(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspShutdown; DRIVER_DISPATCH FspShutdown;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspShutdown;
#pragma alloc_text(PAGE, FspShutdown) #pragma alloc_text(PAGE, FspShutdown)
#endif #endif
static static NTSTATUS FspFsvolShutdown(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolShutdown(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspShutdown(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolShutdown(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolShutdown(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,8 +6,10 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolQueryVolumeInformation; static NTSTATUS FspFsvolQueryVolumeInformation(
static DRIVER_DISPATCH FspFsvolSetVolumeInformation; PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
static NTSTATUS FspFsvolSetVolumeInformation(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspQueryVolumeInformation; DRIVER_DISPATCH FspQueryVolumeInformation;
DRIVER_DISPATCH FspSetVolumeInformation; DRIVER_DISPATCH FspSetVolumeInformation;
@ -18,20 +20,14 @@ DRIVER_DISPATCH FspSetVolumeInformation;
#pragma alloc_text(PAGE, FspSetVolumeInformation) #pragma alloc_text(PAGE, FspSetVolumeInformation)
#endif #endif
static static NTSTATUS FspFsvolQueryVolumeInformation(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolQueryVolumeInformation(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
static static NTSTATUS FspFsvolSetVolumeInformation(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolSetVolumeInformation(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -48,7 +44,7 @@ FspQueryVolumeInformation(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolQueryVolumeInformation(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolQueryVolumeInformation(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }
@ -68,7 +64,7 @@ FspSetVolumeInformation(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolSetVolumeInformation(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolSetVolumeInformation(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }

View File

@ -6,7 +6,8 @@
#include <sys/driver.h> #include <sys/driver.h>
static DRIVER_DISPATCH FspFsvolWrite; static NTSTATUS FspFsvolWrite(
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
DRIVER_DISPATCH FspWrite; DRIVER_DISPATCH FspWrite;
#ifdef ALLOC_PRAGMA #ifdef ALLOC_PRAGMA
@ -14,11 +15,8 @@ DRIVER_DISPATCH FspWrite;
#pragma alloc_text(PAGE, FspWrite) #pragma alloc_text(PAGE, FspWrite)
#endif #endif
static static NTSTATUS FspFsvolWrite(
NTSTATUS PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
FspFsvolWrite(
_In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp)
{ {
return STATUS_INVALID_DEVICE_REQUEST; return STATUS_INVALID_DEVICE_REQUEST;
} }
@ -35,7 +33,7 @@ FspWrite(
switch (FspDeviceExtension(DeviceObject)->Kind) switch (FspDeviceExtension(DeviceObject)->Kind)
{ {
case FspFsvolDeviceExtensionKind: case FspFsvolDeviceExtensionKind:
FSP_RETURN(Result = FspFsvolWrite(DeviceObject, Irp)); FSP_RETURN(Result = FspFsvolWrite(DeviceObject, Irp, IrpSp));
default: default:
FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST); FSP_RETURN(Result = STATUS_INVALID_DEVICE_REQUEST);
} }