From 35c06fe0ba3ae42f3ba8606bfd68346eaf1ee49c Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Mon, 18 Feb 2019 12:20:40 -0800 Subject: [PATCH 1/4] bump version to 2019.2 Gold --- build/VStudio/version.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/VStudio/version.properties b/build/VStudio/version.properties index 4ba521d9..5481d532 100644 --- a/build/VStudio/version.properties +++ b/build/VStudio/version.properties @@ -18,7 +18,7 @@ 1.4 - 2019.1 + 2019.2 Gold $(MyCanonicalVersion).$(MyBuildNumber) From f214561832a2e4b9ee4041bf3fd88bee8a3cda08 Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Mon, 18 Feb 2019 12:23:56 -0800 Subject: [PATCH 2/4] update changelog --- Changelog.asciidoc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/Changelog.asciidoc b/Changelog.asciidoc index f08a07dc..e72f7eb1 100644 --- a/Changelog.asciidoc +++ b/Changelog.asciidoc @@ -1,6 +1,25 @@ = Changelog +v1.4 (2019.2):: + +Changes since v1.3: + +* FUSE3 API (version 3.2) is now available. The FUSE2 API (version 2.8) also remains supported. +* New `Control` file system operation allows sending custom control codes to the file system using the Windows `DeviceIoControl` API. FUSE `ioctl` is also supported. +* New `SetDelete` file system operation can optionally be used instead of `CanDelete`. `SetDelete` or `CanDelete` are used to handle the file "disposition" flag, which determines if a file is marked for deletion. See the relevant documentation for more details. +* `FlushAndPurgeOnCleanup` has now been added to the .NET API. (GitHub PR #176; thanks @FrKaram.) +* The Launcher now supports running file systems under the user account that started them. Use `RunAs="."` in the file system registry entry. +* New sample file system "airfs" contributed by @JohnOberschelp. Airfs is an in-memory file system like Memfs on which it is based on; it has received substantial improvements in how the file name space is maintained and has been modified to use modern C++ techniques by John. +* New sample file system "passthrough-fuse3" passes all operations to an underlying file system. This file system is built using the FUSE3 API. It builds and runs on both Windows and Cygwin. +* The FUSE layer now supports multiple file systems within a single process. This is a long standing problem that has been fixed. (GitHub issue #135.) +* The FSD includes a fix for a Windows problem: that case-sensitive file systems do not work properly when mounted as directories. See FAQ entry #3. +* The FSD includes a fix for a rare but serious problem. (GitHub issue #177. Thanks @thinkport.) +* The FSD includes a fix for an incompatibility with DrWeb Antivirus. (GitHub issue #192) +* The DLL includes a fix for an errorenous `STATUS_ACCESS_DENIED` on read-only directories. (GitHub issue #190. Thanks @alfaunits.) +* The FUSE layer includes a fix for the `ioctl` operation. (GitHub PR #214. Thanks @felfert.) + + v1.4 (2019.1):: Changes since v1.3: From b69ed7e2f045b9fc84896e79751112936dd8d9d4 Mon Sep 17 00:00:00 2001 From: Fritz Elfert Date: Tue, 12 Feb 2019 11:51:07 +0100 Subject: [PATCH 3/4] Fix #213 and a typo in macro FSP_FUSE_CTLCODE_FROM_IOCTL --- inc/fuse/winfsp_fuse.h | 2 +- src/dll/fuse/fuse_intf.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/inc/fuse/winfsp_fuse.h b/inc/fuse/winfsp_fuse.h index ccb8666e..591600ee 100644 --- a/inc/fuse/winfsp_fuse.h +++ b/inc/fuse/winfsp_fuse.h @@ -59,7 +59,7 @@ extern "C" { #define FSP_FUSE_DEVICE_TYPE (0x8000 | 'W' | 'F' * 0x100) /* DeviceIoControl -> ioctl */ #define FSP_FUSE_CTLCODE_FROM_IOCTL(cmd)\ - (FSP_FUSE_DEVICE_TYPE << 16) | (((c) & 0x0fff) << 2) + (FSP_FUSE_DEVICE_TYPE << 16) | (((cmd) & 0x0fff) << 2) #define FSP_FUSE_IOCTL(cmd, isiz, osiz) \ ( \ (((osiz) != 0) << 31) | \ diff --git a/src/dll/fuse/fuse_intf.c b/src/dll/fuse/fuse_intf.c index 2b1716ee..31e9ae55 100644 --- a/src/dll/fuse/fuse_intf.c +++ b/src/dll/fuse/fuse_intf.c @@ -2168,6 +2168,7 @@ static NTSTATUS fsp_fuse_intf_Control(FSP_FILE_SYSTEM *FileSystem, memcpy(OutputBuffer, InputBuffer, InputBufferLength); err = f->ops.ioctl(filedesc->PosixPath, cmd, 0, &fi, 0, OutputBuffer); } + *PBytesTransferred = OutputBufferLength; return fsp_fuse_ntstatus_from_errno(f->env, err); } From 41f80d9c241cefd0b61ef9a3611bc29bdc660337 Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Tue, 19 Feb 2019 12:02:11 -0800 Subject: [PATCH 4/4] update changelog --- Changelog.asciidoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Changelog.asciidoc b/Changelog.asciidoc index e72f7eb1..49e9e636 100644 --- a/Changelog.asciidoc +++ b/Changelog.asciidoc @@ -1,7 +1,7 @@ = Changelog -v1.4 (2019.2):: +v1.4.19049 (2019.2):: Changes since v1.3: