diff --git a/inc/winfsp/fsctl.h b/inc/winfsp/fsctl.h index 5107ba70..e00fca37 100644 --- a/inc/winfsp/fsctl.h +++ b/inc/winfsp/fsctl.h @@ -129,8 +129,6 @@ typedef struct UINT32 HardLinks:1; /* unimplemented; set to 0 */ UINT32 ExtendedAttributes:1; /* unimplemented; set to 0 */ UINT32 ReadOnlyVolume:1; - /* other flags */ - UINT32 FileNameRequired:1; /* FileName required for all operations (not just Create) */ WCHAR Prefix[64]; /* UNC prefix to recognize (\\server\path format, 0-term) */ } FSP_FSCTL_VOLUME_PARAMS; typedef struct diff --git a/src/sys/cleanup.c b/src/sys/cleanup.c index d4c32c17..eeb847b8 100644 --- a/src/sys/cleanup.c +++ b/src/sys/cleanup.c @@ -53,8 +53,6 @@ static NTSTATUS FspFsvolCleanup( if (!FspFileNodeIsValid(IrpSp->FileObject->FsContext)) return STATUS_SUCCESS; - FSP_FSVOL_DEVICE_EXTENSION *FsvolDeviceExtension = FspFsvolDeviceExtension(FsvolDeviceObject); - BOOLEAN FileNameRequired = 0 != FsvolDeviceExtension->VolumeParams.FileNameRequired; PFILE_OBJECT FileObject = IrpSp->FileObject; FSP_FILE_NODE *FileNode = FileObject->FsContext; FSP_FILE_DESC *FileDesc = FileObject->FsContext2; @@ -66,7 +64,7 @@ static NTSTATUS FspFsvolCleanup( FspFileNodeClose(FileNode, FileObject, &DeletePending); /* create the user-mode file system request; MustSucceed because IRP_MJ_CLEANUP cannot fail */ - FspIopCreateRequestMustSucceed(Irp, FileNameRequired ? &FileNode->FileName : 0, 0, &Request); + FspIopCreateRequestMustSucceed(Irp, &FileNode->FileName, 0, &Request); Request->Kind = FspFsctlTransactCleanupKind; Request->Req.Cleanup.UserContext = FileNode->UserContext; Request->Req.Cleanup.UserContext2 = FileDesc->UserContext2; diff --git a/src/sys/close.c b/src/sys/close.c index 53e5fcff..a21bb21a 100644 --- a/src/sys/close.c +++ b/src/sys/close.c @@ -50,8 +50,6 @@ static NTSTATUS FspFsvolClose( if (!FspFileNodeIsValid(IrpSp->FileObject->FsContext)) return STATUS_SUCCESS; - FSP_FSVOL_DEVICE_EXTENSION *FsvolDeviceExtension = FspFsvolDeviceExtension(FsvolDeviceObject); - BOOLEAN FileNameRequired = 0 != FsvolDeviceExtension->VolumeParams.FileNameRequired; PFILE_OBJECT FileObject = IrpSp->FileObject; FSP_FILE_NODE *FileNode = FileObject->FsContext; FSP_FILE_DESC *FileDesc = FileObject->FsContext2; @@ -60,7 +58,7 @@ static NTSTATUS FspFsvolClose( ASSERT(FileNode == FileDesc->FileNode); /* create the user-mode file system request; MustSucceed because IRP_MJ_CLOSE cannot fail */ - FspIopCreateRequestMustSucceed(0, FileNameRequired ? &FileNode->FileName : 0, 0, &Request); + FspIopCreateRequestMustSucceed(0, 0, 0, &Request); Request->Kind = FspFsctlTransactCloseKind; Request->Req.Close.UserContext = FileNode->UserContext; Request->Req.Close.UserContext2 = FileDesc->UserContext2; diff --git a/src/sys/create.c b/src/sys/create.c index da1e058c..6ff96246 100644 --- a/src/sys/create.c +++ b/src/sys/create.c @@ -770,13 +770,10 @@ static VOID FspFsvolCreatePostClose(FSP_FILE_DESC *FileDesc) FSP_FILE_NODE *FileNode = FileDesc->FileNode; PDEVICE_OBJECT FsvolDeviceObject = FileNode->FsvolDeviceObject; - FSP_FSVOL_DEVICE_EXTENSION *FsvolDeviceExtension = FspFsvolDeviceExtension(FsvolDeviceObject); FSP_FSCTL_TRANSACT_REQ *Request; /* create the user-mode file system request; MustSucceed because we cannot fail */ - FspIopCreateRequestMustSucceed(0, - FsvolDeviceExtension->VolumeParams.FileNameRequired ? &FileNode->FileName : 0, - 0, &Request); + FspIopCreateRequestMustSucceed(0, 0, 0, &Request); /* populate the Close request */ Request->Kind = FspFsctlTransactCloseKind; diff --git a/src/sys/fileinfo.c b/src/sys/fileinfo.c index bf0f2ca4..8db8749f 100644 --- a/src/sys/fileinfo.c +++ b/src/sys/fileinfo.c @@ -445,12 +445,9 @@ static NTSTATUS FspFsvolQueryInformation( FspFileNodeAcquireShared(FileNode, Pgio); - FSP_FSVOL_DEVICE_EXTENSION *FsvolDeviceExtension = FspFsvolDeviceExtension(FsvolDeviceObject); - BOOLEAN FileNameRequired = 0 != FsvolDeviceExtension->VolumeParams.FileNameRequired; FSP_FSCTL_TRANSACT_REQ *Request; - Result = FspIopCreateRequestEx(Irp, FileNameRequired ? &FileNode->FileName : 0, 0, - FspFsvolQueryInformationRequestFini, &Request); + Result = FspIopCreateRequestEx(Irp, 0, 0, FspFsvolQueryInformationRequestFini, &Request); if (!NT_SUCCESS(Result)) { FspFileNodeRelease(FileNode, Full); @@ -996,16 +993,13 @@ static NTSTATUS FspFsvolSetInformation( if (!NT_SUCCESS(Result)) return Result; - FSP_FSVOL_DEVICE_EXTENSION *FsvolDeviceExtension = FspFsvolDeviceExtension(FsvolDeviceObject); - BOOLEAN FileNameRequired = 0 != FsvolDeviceExtension->VolumeParams.FileNameRequired; FSP_FILE_NODE *FileNode = FileObject->FsContext; FSP_FILE_DESC *FileDesc = FileObject->FsContext2; FSP_FSCTL_TRANSACT_REQ *Request; ASSERT(FileNode == FileDesc->FileNode); - Result = FspIopCreateRequestEx(Irp, FileNameRequired ? &FileNode->FileName : 0, 0, - FspFsvolSetInformationRequestFini, &Request); + Result = FspIopCreateRequestEx(Irp, 0, 0, FspFsvolSetInformationRequestFini, &Request); if (!NT_SUCCESS(Result)) return Result; diff --git a/src/sys/volinfo.c b/src/sys/volinfo.c index c240df3f..5adcd1cf 100644 --- a/src/sys/volinfo.c +++ b/src/sys/volinfo.c @@ -236,13 +236,9 @@ static NTSTATUS FspFsvolQueryVolumeInformation( return Result; } - FSP_FSVOL_DEVICE_EXTENSION *FsvolDeviceExtension = FspFsvolDeviceExtension(FsvolDeviceObject); - BOOLEAN FileNameRequired = 0 != FsvolDeviceExtension->VolumeParams.FileNameRequired; - PFILE_OBJECT FileObject = IrpSp->FileObject; - FSP_FILE_NODE *FileNode = FileObject->FsContext; FSP_FSCTL_TRANSACT_REQ *Request; - Result = FspIopCreateRequest(Irp, FileNameRequired ? &FileNode->FileName : 0, 0, &Request); + Result = FspIopCreateRequest(Irp, 0, 0, &Request); if (!NT_SUCCESS(Result)) return Result;