mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-23 00:43:00 -05:00
sys: IRP_MJ_CLOSE
This commit is contained in:
parent
51865f5e44
commit
af1cecf26a
@ -12,15 +12,15 @@ static NTSTATUS FspFsvrtClose(
|
|||||||
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
|
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
|
||||||
static NTSTATUS FspFsvolClose(
|
static NTSTATUS FspFsvolClose(
|
||||||
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
|
PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp);
|
||||||
|
FSP_IOCMPL_DISPATCH FspFsvolCloseComplete;
|
||||||
FSP_DRIVER_DISPATCH FspClose;
|
FSP_DRIVER_DISPATCH FspClose;
|
||||||
FSP_IOCMPL_DISPATCH FspCloseComplete;
|
|
||||||
|
|
||||||
#ifdef ALLOC_PRAGMA
|
#ifdef ALLOC_PRAGMA
|
||||||
#pragma alloc_text(PAGE, FspFsctlClose)
|
#pragma alloc_text(PAGE, FspFsctlClose)
|
||||||
#pragma alloc_text(PAGE, FspFsvrtClose)
|
#pragma alloc_text(PAGE, FspFsvrtClose)
|
||||||
#pragma alloc_text(PAGE, FspFsvolClose)
|
#pragma alloc_text(PAGE, FspFsvolClose)
|
||||||
|
#pragma alloc_text(PAGE, FspFsvolCloseComplete)
|
||||||
#pragma alloc_text(PAGE, FspClose)
|
#pragma alloc_text(PAGE, FspClose)
|
||||||
#pragma alloc_text(PAGE, FspCloseComplete)
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static NTSTATUS FspFsctlClose(
|
static NTSTATUS FspFsctlClose(
|
||||||
@ -51,6 +51,14 @@ static NTSTATUS FspFsvolClose(
|
|||||||
return STATUS_INVALID_DEVICE_REQUEST;
|
return STATUS_INVALID_DEVICE_REQUEST;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VOID FspFsvolCloseComplete(
|
||||||
|
PIRP Irp, const FSP_FSCTL_TRANSACT_RSP *Response)
|
||||||
|
{
|
||||||
|
FSP_ENTER_IOC(PAGED_CODE());
|
||||||
|
|
||||||
|
FSP_LEAVE_IOC("FileObject=%p", IrpSp->FileObject);
|
||||||
|
}
|
||||||
|
|
||||||
NTSTATUS FspClose(
|
NTSTATUS FspClose(
|
||||||
PDEVICE_OBJECT DeviceObject, PIRP Irp)
|
PDEVICE_OBJECT DeviceObject, PIRP Irp)
|
||||||
{
|
{
|
||||||
@ -72,11 +80,3 @@ NTSTATUS FspClose(
|
|||||||
|
|
||||||
FSP_LEAVE_MJ("FileObject=%p", IrpSp->FileObject);
|
FSP_LEAVE_MJ("FileObject=%p", IrpSp->FileObject);
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID FspCloseComplete(
|
|
||||||
PIRP Irp, const FSP_FSCTL_TRANSACT_RSP *Response)
|
|
||||||
{
|
|
||||||
FSP_ENTER_IOC(PAGED_CODE());
|
|
||||||
|
|
||||||
FSP_LEAVE_IOC("FileObject=%p", IrpSp->FileObject);
|
|
||||||
}
|
|
||||||
|
@ -68,7 +68,7 @@ NTSTATUS DriverEntry(
|
|||||||
|
|
||||||
/* setup the I/O completion functions */
|
/* setup the I/O completion functions */
|
||||||
FspIopCompleteFunction[IRP_MJ_CREATE] = FspFsvolCreateComplete;
|
FspIopCompleteFunction[IRP_MJ_CREATE] = FspFsvolCreateComplete;
|
||||||
FspIopCompleteFunction[IRP_MJ_CLOSE] = FspCloseComplete;
|
FspIopCompleteFunction[IRP_MJ_CLOSE] = FspFsvolCloseComplete;
|
||||||
FspIopCompleteFunction[IRP_MJ_READ] = FspReadComplete;
|
FspIopCompleteFunction[IRP_MJ_READ] = FspReadComplete;
|
||||||
FspIopCompleteFunction[IRP_MJ_WRITE] = FspWriteComplete;
|
FspIopCompleteFunction[IRP_MJ_WRITE] = FspWriteComplete;
|
||||||
FspIopCompleteFunction[IRP_MJ_QUERY_INFORMATION] = FspQueryInformationComplete;
|
FspIopCompleteFunction[IRP_MJ_QUERY_INFORMATION] = FspQueryInformationComplete;
|
||||||
|
@ -212,7 +212,7 @@ typedef VOID FSP_IOCMPL_DISPATCH(
|
|||||||
_Inout_ PIRP Irp, _In_ const FSP_FSCTL_TRANSACT_RSP *Response);
|
_Inout_ PIRP Irp, _In_ const FSP_FSCTL_TRANSACT_RSP *Response);
|
||||||
FSP_IOPREP_DISPATCH FspFsvolCreatePrepare;
|
FSP_IOPREP_DISPATCH FspFsvolCreatePrepare;
|
||||||
FSP_IOCMPL_DISPATCH FspFsvolCleanupComplete;
|
FSP_IOCMPL_DISPATCH FspFsvolCleanupComplete;
|
||||||
FSP_IOCMPL_DISPATCH FspCloseComplete;
|
FSP_IOCMPL_DISPATCH FspFsvolCloseComplete;
|
||||||
FSP_IOCMPL_DISPATCH FspFsvolCreateComplete;
|
FSP_IOCMPL_DISPATCH FspFsvolCreateComplete;
|
||||||
FSP_IOCMPL_DISPATCH FspDeviceControlComplete;
|
FSP_IOCMPL_DISPATCH FspDeviceControlComplete;
|
||||||
FSP_IOCMPL_DISPATCH FspDirectoryControlComplete;
|
FSP_IOCMPL_DISPATCH FspDirectoryControlComplete;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user