Bill Zissimopoulos
0a919d317a
dll: FspMountBroadcastDriveChange
...
Broadcast WM_DEVICECHANGE asynchronously.
2022-06-07 13:11:23 +01:00
Bill Zissimopoulos
a90f19dbe3
dll: FspMountBroadcastDriveChange: fix drive change unitmask
2022-06-03 12:10:54 +01:00
Bill Zissimopoulos
69257949ac
sys: FspCompareUnicodeString
2022-06-02 13:09:40 +01:00
Bill Zissimopoulos
47aa53c70a
dll: FspFsctlServiceVersion
...
During file system volume creation FspFsctlCreateVolume calls FspFsctlServiceVersion
which examines the version of the driver in use and initializes the variables
FspFsctlTransactCode and FspFsctlTransactBatchCode with either the new
FSP_IOCTL_TRANSACT* codes or the old FSP_FSCTL_TRANSACT* codes.
2022-05-27 18:31:36 +01:00
Bill Zissimopoulos
6764269a49
dll: MountBroadcastDriveChange registry setting: BSF_POSTMESSAGE
2022-05-25 20:52:54 +01:00
Bill Zissimopoulos
41d69d7186
dll: MountBroadcastDriveChange registry setting
2022-05-25 16:55:54 +01:00
Bill Zissimopoulos
f6e6660362
dll: fuse: gracefully handle ENOSYS from xattr calls
2022-05-23 22:07:37 +01:00
Bill Zissimopoulos
9ae9b8ff2c
dll: fuse: uidmap option and AzureAD support
2022-05-23 17:53:39 +01:00
Bill Zissimopoulos
74bb51ae07
shared: posix: FspPosixSetUidMap
2022-05-19 00:50:38 +01:00
Bill Zissimopoulos
c7b3312cf6
sys: disable FSP_FILE_NODE_NO_PGIO
2022-05-17 23:44:16 +01:00
Bill Zissimopoulos
c0fa5696d7
sys: FspVolumeFastTransact
2022-05-17 17:25:18 +01:00
Bill Zissimopoulos
43af829d46
sys,dll,inc: FSP_IOCTL_TRANSACT
2022-05-16 21:40:01 +01:00
Bill Zissimopoulos
dd907a44ad
dll: fuse: ensure MaxComponentLength is initialized
2022-04-25 17:41:42 +01:00
Bill Zissimopoulos
df4c19c113
sys: FSP_FILE_NODE_NO_PGIO
2022-04-19 15:21:54 +01:00
Bill Zissimopoulos
deaf475861
sys: FSP_ENTER_FIO: handle bogus fast I/O to fsctl device
2022-04-19 14:29:29 +01:00
Bill Zissimopoulos
e5879a9cb0
dll: fuse: getpath
2022-04-12 15:44:54 +01:00
Bill Zissimopoulos
1a879e3302
inc, src: PostDispositionWhenNecessaryOnly
...
- Rename PostDispositionForDirOnly to PostDispositionWhenNecessaryOnly
- Implement PostDispositionWhenNecessaryOnly across the board
2022-04-02 12:48:35 +01:00
Bill Zissimopoulos
98421fe11b
inc,sys,tst: fsctl: PostDispositionForDirOnly
2022-04-01 20:54:54 +01:00
Bill Zissimopoulos
d816d607f4
sys: FspFsvolDeviceDirInfoCacheItemSizeMax: increase to 64K
2022-03-24 18:10:04 +00:00
Bill Zissimopoulos
7527155cb8
dll: dirbuf:
...
- FspFileSystemAcquireDirectoryBufferEx takes hint for initial capacity.
- Buffer allocation strategy has been improved to minimize reallocation.
- Quick sort of directory entries now implements median of three partitioning. This improves performance of sorting already sorted data.
2022-03-22 16:47:40 +00:00
Bill Zissimopoulos
20680fa5b5
sys: FastIo: read/write implementation
2022-03-20 20:31:54 +00:00
Bill Zissimopoulos
00d4aba946
github: winfsp org
2022-03-02 18:01:21 +00:00
Bill Zissimopoulos
fadcd84ca9
winfsp.dev website
2022-03-02 17:36:14 +00:00
Bill Zissimopoulos
0c90a69b27
dotnet: Interop.cs: fix newlines
2022-02-03 16:15:24 +00:00
Bill Zissimopoulos
cf13cac438
dll: np: NPGetUniversalName implementation
2022-02-03 15:32:35 +00:00
Bill Zissimopoulos
29251dc2be
sys, dll: convert memory barriers to interlocked operations
2022-01-19 10:55:46 +00:00
Bill Zissimopoulos
04c2f0120c
sys: remove wait group (Wgroup) functionality
2022-01-17 14:30:06 +00:00
Bill Zissimopoulos
228f1d658d
sys: FspVolumeNotify: allow multiple outstanding calls to FspFileSystemNotifyBegin
2022-01-15 15:46:56 +00:00
Bill Zissimopoulos
57fce78ff3
sys: FspVolumeNotifyWork: always acquire the rename lock shared
2022-01-12 15:43:05 +00:00
Bill Zissimopoulos
30d09b4a11
shared: DistinctPermsForSameOwnerGroup: change default to TRUE
2022-01-07 17:50:20 +00:00
Bill Zissimopoulos
751eaa69df
update source copyright to 2022
2022-01-07 17:30:49 +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
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
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
d72fe2ee33
sys: FspFsvolSetDispositionInformation: ignore FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK flag
2021-11-19 17:16:36 +00:00
Bill Zissimopoulos
378beb55eb
dll: fuse: CheckSymlinkDirectory: optimization
2021-11-14 10:48:17 +00:00
Bill Zissimopoulos
0b94e8bc6a
dll: fuse: multiple improvements and fixes
...
- Symlinks: Now supports conventing a directory into a symlink reparse
point.
- Symlinks: The determination of whether a symlink is a file or
directory is now possible for file systems that do not support slashdot
(/.) queries.
- EA: Now allows the removal of non-existant EA without error (this is
allowed on Windows).
2021-11-13 23:27:47 +00:00
Bill Zissimopoulos
d7a8b0d9fb
launcher: SvcInstanceStartWithArgvCopy: properly handle timeout condition
2021-10-31 12:35:30 +00:00
Bill Zissimopoulos
52dd6f7478
dll: fuse: FSP_FUSE_CAP_DELETE_ACCESS
2021-10-26 13:21:57 +01:00
Bill Zissimopoulos
73359d682b
dll: fuse: convert EPERM/EACCES from unlink/rmdir to STATUS_CANNOT_DELETE
2021-10-25 13:58:52 +01:00
Bill Zissimopoulos
9eaaefd154
sys,dll: debug support for DispositionEx, RenameEx
2021-10-21 15:54:38 +01:00
Bill Zissimopoulos
bb3e92df6c
sys, dll: implement POSIX semantics for Rename
2021-10-21 15:39:25 +01:00
Bill Zissimopoulos
76bfa395a8
dotnet: implement new Delete design and POSIX semantics
2021-10-20 12:23:14 +01:00