sys: FSP_ENTER_MJ, FSP_LEAVE_MJ

This commit is contained in:
Bill Zissimopoulos 2015-11-19 15:59:03 -08:00
parent 7c372f9eab
commit 9045db1026
18 changed files with 217 additions and 68 deletions

View File

@ -17,9 +17,9 @@ FspCleanup(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_CLEANUP == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_CLEANUP == IrpSp->MajorFunction);
if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind) if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind)
{ {
@ -34,5 +34,5 @@ FspCleanup(
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,9 +17,9 @@ FspClose(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_CLOSE == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_CLOSE == IrpSp->MajorFunction);
if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind) if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind)
{ {
@ -34,5 +34,5 @@ FspClose(
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,9 +17,9 @@ FspCreate(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_CREATE == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_CREATE == IrpSp->MajorFunction);
if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind) if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind)
{ {
@ -34,5 +34,5 @@ FspCreate(
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -7,6 +7,9 @@
#include <sys/driver.h> #include <sys/driver.h>
#if DBG #if DBG
#define SYM(x) case x: return #x;
#define SYMBRC(x) case x: return "[" #x "]";
static ANSI_STRING DbgBreakPointInc = RTL_CONSTANT_STRING("Fsp*"); static ANSI_STRING DbgBreakPointInc = RTL_CONSTANT_STRING("Fsp*");
BOOLEAN HasDbgBreakPoint(const char *Function) BOOLEAN HasDbgBreakPoint(const char *Function)
{ {
@ -22,12 +25,138 @@ const char *NtStatusSym(NTSTATUS Status)
{ {
switch (Status) switch (Status)
{ {
#define SYM(x) case x: return #x; /* cygwin: sed -n '/_WAIT_0/!s/^#define[ \t]*\(STATUS_[^ \t]*\).*NTSTATUS.*$/SYM(\1)/p' */
/* cygwin: sed -n '/_WAIT_0/!s/^#define[ \t]*\(STATUS_[^ \t]*\).*NTSTATUS.*$/SYM(\1)/p' ntstatus.h >ntstatus.i */ #include "ntstatus.i"
#include "ntstatus.i"
#undef SYM
default: default:
return "UNKNOWN"; return "NTSTATUS:Unknown";
}
}
const char *IrpMajorFunctionSym(UCHAR MajorFunction)
{
switch (MajorFunction)
{
SYM(IRP_MJ_CREATE)
SYM(IRP_MJ_CREATE_NAMED_PIPE)
SYM(IRP_MJ_CLOSE)
SYM(IRP_MJ_READ)
SYM(IRP_MJ_WRITE)
SYM(IRP_MJ_QUERY_INFORMATION)
SYM(IRP_MJ_SET_INFORMATION)
SYM(IRP_MJ_QUERY_EA)
SYM(IRP_MJ_SET_EA)
SYM(IRP_MJ_FLUSH_BUFFERS)
SYM(IRP_MJ_QUERY_VOLUME_INFORMATION)
SYM(IRP_MJ_SET_VOLUME_INFORMATION)
SYM(IRP_MJ_DIRECTORY_CONTROL)
SYM(IRP_MJ_FILE_SYSTEM_CONTROL)
SYM(IRP_MJ_DEVICE_CONTROL)
SYM(IRP_MJ_INTERNAL_DEVICE_CONTROL)
SYM(IRP_MJ_SHUTDOWN)
SYM(IRP_MJ_LOCK_CONTROL)
SYM(IRP_MJ_CLEANUP)
SYM(IRP_MJ_CREATE_MAILSLOT)
SYM(IRP_MJ_QUERY_SECURITY)
SYM(IRP_MJ_SET_SECURITY)
SYM(IRP_MJ_POWER)
SYM(IRP_MJ_SYSTEM_CONTROL)
SYM(IRP_MJ_DEVICE_CHANGE)
SYM(IRP_MJ_QUERY_QUOTA)
SYM(IRP_MJ_SET_QUOTA)
SYM(IRP_MJ_PNP)
default:
return "IRP_MJ:Unknown";
}
}
const char *IrpMinorFunctionSym(UCHAR MajorFunction, UCHAR MinorFunction)
{
switch (MajorFunction)
{
case IRP_MJ_READ:
case IRP_MJ_WRITE:
switch (MinorFunction)
{
SYMBRC(IRP_MN_NORMAL)
SYMBRC(IRP_MN_DPC)
SYMBRC(IRP_MN_MDL)
SYMBRC(IRP_MN_COMPLETE)
SYMBRC(IRP_MN_COMPRESSED)
SYMBRC(IRP_MN_MDL_DPC)
SYMBRC(IRP_MN_COMPLETE_MDL)
SYMBRC(IRP_MN_COMPLETE_MDL_DPC)
default:
return "[Unknown]";
}
case IRP_MJ_DIRECTORY_CONTROL:
switch (MinorFunction)
{
SYMBRC(IRP_MN_QUERY_DIRECTORY)
SYMBRC(IRP_MN_NOTIFY_CHANGE_DIRECTORY)
default:
return "[Unknown]";
}
case IRP_MJ_FILE_SYSTEM_CONTROL:
switch (MinorFunction)
{
SYMBRC(IRP_MN_USER_FS_REQUEST)
SYMBRC(IRP_MN_MOUNT_VOLUME)
SYMBRC(IRP_MN_VERIFY_VOLUME)
SYMBRC(IRP_MN_LOAD_FILE_SYSTEM)
SYMBRC(IRP_MN_KERNEL_CALL)
default:
return "[Unknown]";
}
case IRP_MJ_LOCK_CONTROL:
switch (MinorFunction)
{
SYMBRC(IRP_MN_LOCK)
SYMBRC(IRP_MN_UNLOCK_SINGLE)
SYMBRC(IRP_MN_UNLOCK_ALL)
SYMBRC(IRP_MN_UNLOCK_ALL_BY_KEY)
default:
return "[Unknown]";
}
case IRP_MJ_POWER:
switch (MinorFunction)
{
SYMBRC(IRP_MN_WAIT_WAKE)
SYMBRC(IRP_MN_POWER_SEQUENCE)
SYMBRC(IRP_MN_SET_POWER)
SYMBRC(IRP_MN_QUERY_POWER)
default:
return "[Unknown]";
}
case IRP_MJ_SYSTEM_CONTROL:
switch (MinorFunction)
{
SYMBRC(IRP_MN_QUERY_ALL_DATA)
SYMBRC(IRP_MN_QUERY_SINGLE_INSTANCE)
SYMBRC(IRP_MN_CHANGE_SINGLE_INSTANCE)
SYMBRC(IRP_MN_CHANGE_SINGLE_ITEM)
SYMBRC(IRP_MN_ENABLE_EVENTS)
SYMBRC(IRP_MN_DISABLE_EVENTS)
SYMBRC(IRP_MN_ENABLE_COLLECTION)
SYMBRC(IRP_MN_DISABLE_COLLECTION)
SYMBRC(IRP_MN_REGINFO)
SYMBRC(IRP_MN_EXECUTE_METHOD)
SYMBRC(IRP_MN_REGINFO_EX)
default:
return "[Unknown]";
}
case IRP_MJ_PNP:
switch (MinorFunction)
{
SYMBRC(IRP_MN_START_DEVICE)
SYMBRC(IRP_MN_QUERY_REMOVE_DEVICE)
SYMBRC(IRP_MN_REMOVE_DEVICE)
SYMBRC(IRP_MN_CANCEL_REMOVE_DEVICE)
SYMBRC(IRP_MN_SURPRISE_REMOVAL)
default:
return "[Unknown]";
}
default:
return "";
} }
} }
#endif #endif

View File

@ -17,13 +17,13 @@ FspDeviceControl(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_DEVICE_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_DEVICE_CONTROL == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspDirectoryControl(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_DIRECTORY_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_DIRECTORY_CONTROL == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -100,7 +100,7 @@ DriverEntry(
*/ */
IoRegisterFileSystem(FspFileSystemDeviceObject); IoRegisterFileSystem(FspFileSystemDeviceObject);
FSP_LEAVE("DriverObject->DriverName=\"%wZ\", RegistryPath=\"%wZ\"", FSP_LEAVE("DriverName=\"%wZ\", RegistryPath=\"%wZ\"",
&DriverObject->DriverName, RegistryPath); &DriverObject->DriverName, RegistryPath);
} }
@ -116,7 +116,7 @@ FspUnload(
FspFileSystemDeviceObject = 0; FspFileSystemDeviceObject = 0;
} }
FSP_LEAVE_VOID("DriverObject->DriverName=\"%wZ\"", FSP_LEAVE_VOID("DriverName=\"%wZ\"",
&DriverObject->DriverName); &DriverObject->DriverName);
} }

View File

@ -22,8 +22,6 @@
/* enter/leave*/ /* enter/leave*/
#if DBG #if DBG
BOOLEAN HasDbgBreakPoint(const char *Function);
const char *NtStatusSym(NTSTATUS Status);
#define FSP_DEBUGLOG_(rfmt, r, fmt, ...)\ #define FSP_DEBUGLOG_(rfmt, r, fmt, ...)\
DbgPrint(AbnormalTermination() ? \ DbgPrint(AbnormalTermination() ? \
DRIVER_NAME "!" __FUNCTION__ "(" fmt ") = !AbnormalTermination\n" :\ DRIVER_NAME "!" __FUNCTION__ "(" fmt ") = !AbnormalTermination\n" :\
@ -58,6 +56,20 @@ const char *NtStatusSym(NTSTATUS Status);
NTSTATUS Result = STATUS_SUCCESS; FSP_ENTER_(__VA_ARGS__) NTSTATUS Result = STATUS_SUCCESS; FSP_ENTER_(__VA_ARGS__)
#define FSP_LEAVE(fmt, ...) \ #define FSP_LEAVE(fmt, ...) \
FSP_LEAVE_(" = %s", NtStatusSym(Result), fmt, __VA_ARGS__); return Result FSP_LEAVE_(" = %s", NtStatusSym(Result), fmt, __VA_ARGS__); return Result
#define FSP_ENTER_MJ(...) \
NTSTATUS Result = STATUS_SUCCESS; \
PIO_STACK_LOCATION IrpSp = IoGetCurrentIrpStackLocation(Irp);(void)IrpSp;\
FSP_ENTER_(__VA_ARGS__)
#define FSP_LEAVE_MJ(fmt, ...) \
FSP_LEAVE_(" = %s", NtStatusSym(Result),\
"'%c', %s%s, Flags=%x, " \
fmt, \
FspDeviceExtension(DeviceObject)->Kind,\
IrpMajorFunctionSym(IrpSp->MajorFunction),\
IrpMinorFunctionSym(IrpSp->MajorFunction, IrpSp->MajorFunction),\
IrpSp->Flags, \
__VA_ARGS__); \
return Result
#define FSP_ENTER_BOOL(...) \ #define FSP_ENTER_BOOL(...) \
BOOLEAN Result = TRUE; FSP_ENTER_(__VA_ARGS__) BOOLEAN Result = TRUE; FSP_ENTER_(__VA_ARGS__)
#define FSP_LEAVE_BOOL(fmt, ...) \ #define FSP_LEAVE_BOOL(fmt, ...) \
@ -76,8 +88,8 @@ const char *NtStatusSym(NTSTATUS Status);
/* types */ /* types */
enum enum
{ {
FspFileSystemDeviceExtensionKind = 0, FspFileSystemDeviceExtensionKind = 'F',
FspVolumeDeviceExtensionKind, FspVolumeDeviceExtensionKind = 'V',
}; };
typedef struct typedef struct
{ {
@ -139,6 +151,14 @@ FAST_IO_RELEASE_FOR_MOD_WRITE FspReleaseForModWrite;
FAST_IO_ACQUIRE_FOR_CCFLUSH FspAcquireForCcFlush; FAST_IO_ACQUIRE_FOR_CCFLUSH FspAcquireForCcFlush;
FAST_IO_RELEASE_FOR_CCFLUSH FspReleaseForCcFlush; FAST_IO_RELEASE_FOR_CCFLUSH FspReleaseForCcFlush;
/* debug */
#if DBG
BOOLEAN HasDbgBreakPoint(const char *Function);
const char *NtStatusSym(NTSTATUS Status);
const char *IrpMajorFunctionSym(UCHAR MajorFunction);
const char *IrpMinorFunctionSym(UCHAR MajorFunction, UCHAR MinorFunction);
#endif
/* extern */ /* extern */
extern PDEVICE_OBJECT FspFileSystemDeviceObject; extern PDEVICE_OBJECT FspFileSystemDeviceObject;

View File

@ -19,15 +19,15 @@ FspQueryEa(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_QUERY_EA == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_QUERY_EA == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }
NTSTATUS NTSTATUS
@ -35,13 +35,13 @@ FspSetEa(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_SET_EA == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_SET_EA == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -19,15 +19,15 @@ FspQueryInformation(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_QUERY_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_QUERY_INFORMATION == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }
NTSTATUS NTSTATUS
@ -35,13 +35,13 @@ FspSetInformation(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_SET_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_SET_INFORMATION == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspFlushBuffers(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_FLUSH_BUFFERS == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_FLUSH_BUFFERS == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspFileSystemControl(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_FILE_SYSTEM_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_FILE_SYSTEM_CONTROL == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspLockControl(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_LOCK_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_LOCK_CONTROL == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspRead(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_READ == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_READ == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -19,15 +19,15 @@ FspQuerySecurity(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_QUERY_SECURITY == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_QUERY_SECURITY == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }
NTSTATUS NTSTATUS
@ -35,13 +35,13 @@ FspSetSecurity(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_SET_SECURITY == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_SET_SECURITY == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspShutdown(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_SHUTDOWN == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_SHUTDOWN == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -19,15 +19,15 @@ FspQueryVolumeInformation(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_QUERY_VOLUME_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_QUERY_VOLUME_INFORMATION == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }
NTSTATUS NTSTATUS
@ -35,13 +35,13 @@ FspSetVolumeInformation(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_SET_VOLUME_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_SET_VOLUME_INFORMATION == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }

View File

@ -17,13 +17,13 @@ FspWrite(
_In_ PDEVICE_OBJECT DeviceObject, _In_ PDEVICE_OBJECT DeviceObject,
_In_ PIRP Irp) _In_ PIRP Irp)
{ {
FSP_ENTER(PAGED_CODE()); FSP_ENTER_MJ(PAGED_CODE());
ASSERT(IRP_MJ_WRITE == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(IRP_MJ_WRITE == IrpSp->MajorFunction);
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
Result = STATUS_INVALID_DEVICE_REQUEST; Result = STATUS_INVALID_DEVICE_REQUEST;
FSP_LEAVE("", 0); FSP_LEAVE_MJ("", 0);
} }