2927 Commits

Author SHA1 Message Date
Bill Zissimopoulos
e2bf834ff1
tools: run-tests: fixes for appveyor vs2019 image 2022-01-13 13:40:29 +00:00
Bill Zissimopoulos
57fce78ff3
sys: FspVolumeNotifyWork: always acquire the rename lock shared 2022-01-12 15:43:05 +00:00
Bill Zissimopoulos
24e6f1a2f6
Merge branch 'pvt-gauntlet-vs2019' into pvt-gauntlet-merge 2022-01-08 09:51:41 +00:00
Bill Zissimopoulos
6720dfacbc
workflows: avm: update files to check 2022-01-07 18:13:04 +00:00
Bill Zissimopoulos
dc5862c2a2
update changelog 2022-01-07 18:03:48 +00:00
Bill Zissimopoulos
30d09b4a11
shared: DistinctPermsForSameOwnerGroup: change default to TRUE 2022-01-07 17:50:20 +00:00
Bill Zissimopoulos
e9808a4373
update changelog 2022-01-07 17:44:27 +00:00
Bill Zissimopoulos
751eaa69df
update source copyright to 2022 2022-01-07 17:30:49 +00:00
Bill Zissimopoulos
aa644b4c7a
installer: add ntptfs sample 2022-01-06 17:14:46 +00:00
Bill Zissimopoulos
61a8adc809
tst: ntptfs: ARM64 build 2022-01-06 17:02:14 +00:00
Bill Zissimopoulos
76ad6d6ac9
Merge branch 'pvt-arm64' 2022-01-06 16:47:53 +00:00
Bill Zissimopoulos
0621a545ed
doc: tutorial: add note about ntptfs 2022-01-06 16:38:47 +00:00
Bill Zissimopoulos
eff74d78f5
Merge branch 'pvt-ntptfs' 2022-01-06 16:34:13 +00:00
Bill Zissimopoulos
36a3f1e1bf
changelog: archive old log and change format to markdown 2022-01-06 16:32:34 +00:00
Bill Zissimopoulos
2fb2de067c
update changelog v1.10 2022-01-06 13:49:56 +00:00
Bill Zissimopoulos
27b52fd167
tst: ntptfs: new passthrough file system 2022-01-06 13:40:26 +00:00
Bill Zissimopoulos
423c70757c
build: version: WinFsp 2022 2021-12-29 23:06:36 +00:00
Bill Zissimopoulos
551ed341a7
build: version: 2022 Beta5 v1.10B5 2021-12-20 14:57:13 +00:00
Bill Zissimopoulos
b8038604d1
tst: winfsp-tests: disable delete_ex_test and rename_ex_test on shares
These tests fail on Server 2019. This is not a WinFsp problem.
2021-12-18 10:20:15 +00:00
Bill Zissimopoulos
38a8a4c2d2
tools: run-tests.bat: ifstest: disable SetPointIoReparseDataInvalidTest
This test succeeds on Server 2012 and fails on Server 2016/2019.
Investigation on Server 2019 showed that the FSCTL_SET_REPARSE_POINT
input buffer length was 23 instead of less than
REPARSE_DATA_BUFFER_HEADER_SIZE(==8) like ifstest claims. This
suggests that WinFsp is not the problem here, but perhaps some OS
changes between Server 2012 and Server 2016. NOTE that we are still
using the ifstest from Server 2012 HCK, which may account for the
difference.
2021-12-17 21:47:43 +00:00
Bill Zissimopoulos
fbd7036efa
appveyor: gauntlet: VS2017 support 2021-12-17 12:52:32 +00:00
Bill Zissimopoulos
c8ff0d4c88
appveyor: gauntlet 2021-12-17 12:00:26 +00:00
Bill Zissimopoulos
1cf40caedc
appveyor: gauntlet 2021-12-17 00:36:21 +00:00
Bill Zissimopoulos
defa57fd94
build: fix broken version info 2021-12-17 00:03:37 +00:00
Bill Zissimopoulos
c4cc444b80
doc: WinFsp on ARM64 2021-12-16 21:41:31 +00:00
Bill Zissimopoulos
b2681ff9c8
tools: remove-build-arm64 2021-12-16 16:06:27 +00:00
Bill Zissimopoulos
3bcb025389
build: VStudio: build.common.props 2021-12-16 15:39:29 +00:00
Bill Zissimopoulos
3b19b125b7
build: VStudio: build.common.props 2021-12-16 14:31:44 +00:00
Bill Zissimopoulos
8f0b80f46c
build: VStudio: build.common.props 2021-12-16 14:18:52 +00:00
Bill Zissimopoulos
5a44f4a233
appveyor: use VS2015 to build post-ARM64 2021-12-16 11:35:38 +00:00
Bill Zissimopoulos
6ab1ed3b7f
tools: remove-all-arm64
Add script to remove ARM64 project configurations for builds on VS2015
2021-12-16 11:30:09 +00:00
Bill Zissimopoulos
52ffb47fee
build: fix broken version info 2021-12-08 10:37:33 +00:00
Bill Zissimopoulos
41cc70e573
ARM64: initial port 2021-12-07 14:40:28 +00:00
Bill Zissimopoulos
c208e0ecbd
sys: cache FileDesc->DispositionStatus
DeleteFileW and RemoveDirectoryW in recent versions of Windows 10 have
been changed to perform a FileDispositionInformationEx with POSIX
semantics and if that fails to retry with FileDispositionInformation.
Unfortunately this is done even for legitimate error codes such as
STATUS_DIRECTORY_NOT_EMPTY.

This means that user mode file systems have to do unnecessary CanDelete
checks even when they support FileDispositionInformationEx. The extra
check incurs extra context switches, and in some cases it may also be
costly to compute (e.g. FUSE).

We optimize this away by storing the status of the last CanDelete check
in the FileDesc and then continue returning the same status code for
all checks for the same FileDesc.
2021-12-04 12:36:12 +00:00
Bill Zissimopoulos
87389f010b
build: fix broken builds when FSD source changes
Turns out that the linker automatically creates .LIB and .EXP files
for all targets that export symbols (e.g. via __declspec(dllexport)).
The FSD now exports symbols for use by other kernel drivers; this
resulted in files like winfsp-x64.lib and winfsp-x64.exp to be
inadvertently created. Unfortunately this clashed with the files with
the same name created from building the DLL.

Since we only want the .LIB and .EXP files produced from the DLL, we
rename the .LIB and .EXP files produced from the FSD to a name that
does not clash. There does not seem to be any way to instruct the
linker to completely turn off .LIB and .EXP file generation for targets
that export symbols.
2021-12-04 08:36:54 +00:00
Bill Zissimopoulos
c32b1c19c2
sys: FspFsvolQueryDirectoryRetry: early exit when pattern not wild 2021-12-03 17:20:50 +00:00
Bill Zissimopoulos
8ce6836674
dll: FspFileSystemSearchDirectoryBuffer: fix #351 2021-12-03 14:47:19 +00:00
Bill Zissimopoulos
8ba8d31e50
changelog: v1.10B4 update v1.10B4 2021-11-26 10:34:33 +00:00
Bill Zissimopoulos
c1ab78e8e1
changelog: v1.10B4 update 2021-11-26 10:33:29 +00:00
Bill Zissimopoulos
ed404ee579 inc: winfsp.h: FspCleanupDelete: POSIX semantics 2021-11-25 12:18:43 +00:00
Bill Zissimopoulos
620ebd9e72 inc: winfsp.h: FspCleanupDelete: POSIX semantics 2021-11-25 12:14:48 +00:00
Bill Zissimopoulos
fc8d18e4de doc: revert the Delete redesign 2021-11-25 11:51:29 +00:00
Bill Zissimopoulos
00219f29cf
sys: POSIX rename improvements 2021-11-25 10:35:22 +00:00
Bill Zissimopoulos
c4f994f8f6
sys: FspFsvolSetDispositionInformation
return STATUS_FILE_DELETED if file is already deleted
2021-11-24 18:31:48 +00:00
Bill Zissimopoulos
91211f6ccb
sys: reimplement POSIX unlink 2021-11-24 16:03:31 +00:00
Bill Zissimopoulos
666561bfa1
dll: revert the Delete redesign 2021-11-22 18:26:45 +00:00
Bill Zissimopoulos
4e94991221
dll: fuse: revert the Delete redesign 2021-11-22 14:46:57 +00:00
Bill Zissimopoulos
826a514fe3
dll: dotnet: revert the Delete redesign 2021-11-22 13:55:32 +00:00
Bill Zissimopoulos
a9d90acd71
tst: winfsp-tests: exec_delete_test 2021-11-20 10:53:57 +00:00
Bill Zissimopoulos
d72fe2ee33
sys: FspFsvolSetDispositionInformation: ignore FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK flag 2021-11-19 17:16:36 +00:00