Bill Zissimopoulos
7ee0873f4b
sys: FspVolumeDelete: move FspIoqStop prior to VolumeDeleteResource acquisition
2026-07-27 18:40:57 +03:00
Bill Zissimopoulos
e3ecc89bb7
build: version 2026 Beta3
2026-07-13 12:23:41 +03:00
Bill Zissimopoulos
83aa54b4ab
sys: FspFsvolWriteCached: move CcCanIWrite outside the locks
...
This eliminates the deadlock described in PR #677 while at the same time
ensuring that CcDeferWrite is called after the file's cache map has been
initialized.
2026-07-11 14:05:26 +03:00
Bill Zissimopoulos
e7c7ccc5c4
build: version 2026 Beta2
2026-06-23 15:48:18 +03:00
Bill Zissimopoulos
0953e76255
changelog: 2026 Beta2
2026-06-23 15:46:35 +03:00
Bill Zissimopoulos
932e52769d
Contributors: sort names
2026-06-23 15:27:31 +03:00
Bill Zissimopoulos and GitHub
9d1b37f0f1
Merge pull request #672 from Maksim-Isakau/test-notify-rename-race
...
tst: notify_rename_race_test: repro notify/rename deadlock
2026-06-23 15:24:24 +03:00
Bill Zissimopoulos and GitHub
169eb2c35d
Merge pull request #669 from yeonsh/fix-notify-rename-selfdeadlock
...
sys: fix FileRenameResource self-deadlock between notify session and FspVolumeNotifyWork
2026-06-23 15:21:41 +03:00
Bill Zissimopoulos
bd8b54c469
sys: FspVolumeNotify: fix integer overflow vulnerability
...
This vulnerability was reported by:
- Tay Kiat Loong (GitHub: @owl4444)
- uhg (GitHub: @UltimateHG)
2026-06-13 16:41:35 +03:00
Bill Zissimopoulos and GitHub
bdab233e92
doc: add KeibiDrop to known file systems
2026-06-13 15:01:36 +03:00
Bill Zissimopoulos and GitHub
1ad7d9935f
doc: add KeibiDrop to known file systems
2026-06-13 14:59:27 +03:00
Bill Zissimopoulos
ff9e38c82d
doc: add 9p-winfsp to known file systems
2026-05-31 21:34:09 +03:00
Bill Zissimopoulos
608e16761e
tst: passthrough, passthrough-cpp: fix #662
2026-05-18 12:22:22 +03:00
Bill Zissimopoulos
0a89d2ecaf
tools: make-release: add new signatures
2026-04-22 18:21:32 +03:00
Bill Zissimopoulos
d9ffc24334
changelog: 2026 Beta1
2026-04-22 18:16:39 +03:00
Bill Zissimopoulos
624f285452
update source copyright for 2026
2026-03-04 15:54:27 +02:00
Bill Zissimopoulos
6ab7532d5b
Merge branch 'pvt-np-nolaunch'
2026-03-04 15:25:53 +02:00
Bill Zissimopoulos
cc533632a2
build: version 2026 Beta1
2026-03-04 15:23:14 +02:00
Bill Zissimopoulos
8b1e2d3020
build,tools: updates for new EV cert
2026-03-04 15:16:54 +02:00
Bill Zissimopoulos
7f82326454
sys: FspFastIoDeviceControl: add a couple of fixes
...
- Check that the operation succeeded prior to copying to the output buffer.
- Avoid information leaks by only copying what is necessary to the output
buffer (suggestion by Tay Kiat Loong).
2026-02-17 20:48:01 +02:00
Bill Zissimopoulos
13d306f586
sys: FspFastIoDeviceControl: check input/output buffer lengths
2026-02-17 17:07:28 +02:00
Bill Zissimopoulos
ae40f0edb1
sys: FspFastIoDeviceControl: fix exploit reported by Tay Kiat Loong
...
The WinFsp "transact" protocol is used by user mode file systems to interface
with the FSD. This protocol works via the DeviceIoControl API and uses the
FSP_IOCTL_TRANSACT control code. The FSP_IOCTL_TRANSACT code is marked as
METHOD_BUFFERED.
When the DeviceIoControl call is forwarded as an IRP, the METHOD_BUFFERED flag
instructs the kernel to copy user mode buffers to kernel mode buffers (and
vice-versa). However when the DeviceIoControl call is forwarded via the FastIO
mechanism the METHOD_BUFFERED flag is ignored. This means that when WinFsp
added support for DeviceIoControl FastIO, the FSD started accessing user mode
buffers directly.
This means that a malicious file system could attempt exploits like changing
or freeing a buffer while the FSD is reading it. Tay Kiat Loong developed a
POC exploit which demonstrated this vulnerability.
This commit fixes the problem by patching FspFastIoDeviceControl to add the
missing METHOD_BUFFERED handling.
2026-02-17 15:21:35 +02:00
Bill Zissimopoulos and GitHub
aed8bb745f
Merge pull request #648 from chenjie4255/add_write_ea_perm
...
dll & fuse: Added "AddWriteEaPerm" mount option.
2026-02-05 12:07:23 +02:00
Bill Zissimopoulos
f021496302
np: NPAddConnection: support file systems not managed by the launcher
2026-02-03 21:03:04 +02:00
Bill Zissimopoulos and GitHub
2aa682ffa1
Merge pull request #626 from chenjie4255/directio
...
dll: add support for disabling directio.
2025-12-24 11:18:13 +00:00
Bill Zissimopoulos and GitHub
4045ce2d19
Merge pull request #625 from tomgr/doc-add-buildbarn
...
doc: add bb-remote-execution to known file systems
2025-08-21 15:32:40 +03:00
Bill Zissimopoulos and GitHub
5b429bc445
Merge pull request #614 from chenjie4255/flush_on_cleanup
...
dll: Added FlushOnCleanup fuse param
2025-08-07 16:55:11 +03:00
Bill Zissimopoulos and GitHub
facd4bb9c4
Merge pull request #613 from chenjie4255/patch-1
...
Update Contributors.asciidoc
2025-08-07 16:54:31 +03:00
Bill Zissimopoulos and GitHub
d6444da2ef
Merge pull request #617 from coderall2/fix_path_convert_bug
...
Fix: fix FspPosixMapPosixToWindowsPathEx pointer misuse
2025-08-06 18:19:19 +03:00
Bill Zissimopoulos
ddca7bd548
sys: driver.inf: PnpLockdown=1
2025-06-05 16:02:43 +01:00
Bill Zissimopoulos
d3700d3593
build: version: 2025
2025-05-15 20:35:01 +01:00
Bill Zissimopoulos
c8366af48c
update source copyright for 2025
2025-05-15 20:33:31 +01:00
Bill Zissimopoulos
44c621c0de
changelog: 2025
2025-05-15 20:23:06 +01:00
Bill Zissimopoulos
a2cd6978be
sys: CcDeferWrite fix
2025-05-15 12:46:00 +01:00
Bill Zissimopoulos
d75e9f7ee6
sys: oplock fix
2025-05-08 21:47:06 +01:00
Bill Zissimopoulos
6803bb4136
tools: build.bat: fix target SDK for AppVeyor
2025-04-25 20:18:21 +01:00
Bill Zissimopoulos
fb14262e43
build: support VS2019 builds and also latest SDK/WDK builds
2025-04-25 19:51:21 +01:00
Bill Zissimopoulos
4fdec4d37f
sys: FspFsvolCreate, FspFsvolSetSecurity: absolute security descriptors
...
Some third party filters send us security descriptors in absolute rather
than self-relative format. Handle this case by converting them to self-
relative format ourselves.
2024-10-10 12:34:04 +01:00
Bill Zissimopoulos
2da97d48f5
tools: make-release: add new signatures
2024-09-11 14:48:55 +01:00
Bill Zissimopoulos
7c5dc48414
build: version: 2024 Beta2
2024-09-11 14:46:38 +01:00
Bill Zissimopoulos
93c057571a
changelog: 2024 Beta2
2024-09-11 13:23:41 +01:00
Bill Zissimopoulos and GitHub
da16d0e6ea
Merge pull request #567 from siketyan/fix/string-h-import
...
fix: Add missing string.h import in winfsp_fuse.h
2024-09-10 09:25:12 +01:00
Bill Zissimopoulos
2bf9a6c16e
sys: mup: correctly handle relative file object chain ( #561 )
2024-06-20 12:44:35 +01:00
Bill Zissimopoulos
b058925692
tst: launcher-secrets: secret: replace gets with fgets
2024-06-03 11:49:38 +01:00
Bill Zissimopoulos
507c794470
doc: known file systems: remove nodejs library with no support for WinFsp
2024-02-20 13:18:30 +00:00
Bill Zissimopoulos
9a6571809e
changelog: 2024 Beta1
2024-02-20 12:16:46 +00:00
Bill Zissimopoulos
e452f75c9c
doc: SxsDir registry setting
2024-01-20 10:55:26 +00:00
Bill Zissimopoulos
7551193ad7
update source copyright to 2024
2024-01-08 12:38:44 +00:00
Bill Zissimopoulos
65bf8c5319
dll: use adaptive locks when starting/stopping FSD
2023-12-12 12:36:41 +00:00
Bill Zissimopoulos
be5faf34bc
build: version: 2024 Beta1
2023-12-11 16:26:56 +00:00
Bill Zissimopoulos
0e1c8ae1dc
build: version: correct version to 2023.1 Beta1
2023-08-30 11:33:54 +01:00
Bill Zissimopoulos
9aa67bdad4
build: version: bump to 2.1 (2023.1)
2023-08-30 11:30:36 +01:00
Bill Zissimopoulos
de321620fd
dll: FspFsctlServiceVersion as public API
2023-08-30 11:17:09 +01:00
Bill Zissimopoulos
a482183149
sys: FspPropagateTopFlags: check TopLevelIrp not completed
...
Add a check to verify that the TopLevelIrp has not been completed. This
became necessary because on recent Windows kernels, IRP's can have "IRP
extensions", which are freed when an IRP is completed. This can trigger
a recursive CLOSE with a top-level IRP that has been completed, which
can bugcheck the system.
Case in point: the new (Win11) NtCopyFileChunk creates IRP's with
COPY_INFORMATION attached. Upon completion of such an IRP the
SourceFileObject is freed, which results in a recursive IRP_MJ_CLOSE
with a completed top-level IRP, which would lead to a BSOD.
2023-08-29 13:15:37 +01:00
Bill Zissimopoulos
6fb72555d3
github: workflows: avm: update latest asset
2023-03-16 11:58:45 +00:00
Bill Zissimopoulos
9accf72d39
tools: make-release.ps1: match release tag exactly
2023-03-16 11:30:03 +00:00
Bill Zissimopoulos
5c03dd11ee
changelog: version: 2023
2023-03-16 10:43:13 +00:00
Bill Zissimopoulos
1f37e5a81a
build: version: 2023
2023-03-16 10:43:00 +00:00
Bill Zissimopoulos
db319bc3c1
sys,dll: mount improvements
...
- sys: FspFsvolFileSystemControl: FSCTL_IS_VOLUME_MOUNTED
- dll: mount: Transact0, FspMountNotifyShellDriveChange
2023-02-24 12:02:03 +00:00
Bill Zissimopoulos
c04e3d9534
doc: update FAQ
2023-02-23 13:50:11 +00:00
Bill Zissimopoulos
1912814d79
changelog: v2.0RC1
2023-02-23 13:29:10 +00:00
Bill Zissimopoulos
97c075e744
sys: FspFsvolQueryDirectoryCopy: add missing continue
...
A single line change in FspFsvolQueryDirectoryCopy fixes GitHub issue #475 .
This commit also includes a test for detecting duplicate directory entries.
Credit for the investigation and reproduction of this issue goes to GitHub
user @hach-que.
2023-02-16 17:07:59 +00:00
Bill Zissimopoulos
874a223bcc
build: version: 2023 RC1
2023-02-07 20:55:49 +00:00
Bill Zissimopoulos
901a98e118
tools: make-release.ps1: automate submissions to hardware dashboard
2023-02-07 20:54:05 +00:00
Bill Zissimopoulos
0ab4300738
github: workflows: avm: update files
2023-02-02 12:20:34 +00:00
Bill Zissimopoulos
52e6aa97b5
build: sys: pacify hardware center validation
...
Infverif /k no longer likes "undecorated" [DefaultInstall] sections and
instead it wants them "architecture decorated". For example,
[DefaultInstall.ntarm64]. So play along to have our driver signed.
For more information see:
https://learn.microsoft.com/en-us/windows-hardware/drivers/develop/creating-a-primitive-driver
2023-02-01 22:50:35 +00:00
Bill Zissimopoulos
a7d82d5f8d
changelog: v2.0B2 update
2023-02-01 17:55:14 +00:00
Bill Zissimopoulos
3aadaee511
dll: FspFileSystemStopServiceIfNecessary
2023-02-01 17:42:11 +00:00
Bill Zissimopoulos and GitHub
da3a8aa229
Merge pull request #478 from zeho11/patch-1
...
tst: passthrough-fuse: fix UNC path mount
2023-02-01 11:01:13 +00:00
Bill Zissimopoulos
6da92f0b54
tools: make-release: add nuget support
2023-01-09 23:04:03 +00:00
Bill Zissimopoulos
4f5f1dd350
build: version: bump to v2.0B2
2023-01-09 22:27:44 +00:00
Bill Zissimopoulos
ba5d52e9a5
dll: FspFileSystemStartDispatcher:
...
Send a Transact0 to inform the FSD that the dispatcher is almost ready.
2023-01-09 15:45:11 +00:00
Bill Zissimopoulos
d626fb9563
sys: FspReleaseForModWrite
...
In some rare cases and under load the mapped page writer's TopLevelIrp
may be trashed by some outside component (observed on Windows 10 1909).
For this reason remove an assertion that could trigger in debug builds.
2023-01-09 15:30:42 +00:00
Bill Zissimopoulos and GitHub
760c2acded
Merge pull request #476 from zeho11/patch-1
...
dll: fuse: correct error handling when name exceeds limit
2022-12-16 22:29:37 +00:00
Bill Zissimopoulos
e92eb023fe
Merge branch 'release/1.12'
2022-12-12 11:53:20 +00:00
Bill Zissimopoulos and GitHub
46054c03fe
Merge pull request #474 from zeho11/patch-1
...
dll: fuse: change name limit to 255 chars
2022-12-08 16:02:38 +00:00
Bill Zissimopoulos
c61679a35d
tools: build.bat: make cab file from unsigned drivers
2022-12-05 13:06:18 +00:00
Bill Zissimopoulos
619e41a18e
changelog: update for v1.12.22335
2022-12-01 11:09:58 +00:00
Bill Zissimopoulos
80fa156e7b
tools: build.bat: remove SHA1 signatures
2022-12-01 10:59:48 +00:00
Bill Zissimopoulos
01d9fa1719
Merge branch 'pvt-dotnetcore'
2022-11-30 10:06:42 +00:00
Bill Zissimopoulos
6846508631
tools: build.bat,make-release.ps1: accommodate winfsp.net.nupkg
2022-11-29 21:13:13 +00:00
Bill Zissimopoulos
0488451c3d
build: fix dotnet output paths
2022-11-29 15:49:09 +00:00
Bill Zissimopoulos
7c3292af81
tools: build.bat: dotnet build
2022-11-29 12:53:33 +00:00
Bill Zissimopoulos
3d2ba637e5
build: minimize changes in .csproj files
2022-11-28 16:52:21 +00:00
Bill Zissimopoulos
db72b57ca4
build: dotnet: remove Directory.Build.props
2022-11-28 14:04:51 +00:00
Bill Zissimopoulos
020157a9ae
Merge branch 'dotnetcore' of https://github.com/Noire001/winfsp into Noire001-dotnetcore
2022-11-28 12:13:50 +00:00
Bill Zissimopoulos
298261c4af
tools: make-release.ps1: add build hashes
2022-11-23 16:21:08 +00:00
Bill Zissimopoulos
3c674a556d
tools: make-release.ps1: update download link
2022-11-23 15:18:25 +00:00
Bill Zissimopoulos
f85fb49f49
changelog: update for v2.0B1
2022-11-23 14:32:31 +00:00
Bill Zissimopoulos
9747af22e8
changelog: update for v1.12 (2022.2)
2022-10-18 12:21:23 +01:00
Bill Zissimopoulos
e1b2e77df0
build: version: 2022.2
2022-10-18 12:19:36 +01:00
Bill Zissimopoulos
ef9b7e22c6
Merge branch 'master' into pvt-sxs
2022-10-12 16:57:59 +01:00
Bill Zissimopoulos
4783902d1d
tools: make-release.ps1
2022-10-12 16:57:43 +01:00
Bill Zissimopoulos
fd27c470b0
Merge branch 'master' into pvt-sxs
2022-10-12 16:36:22 +01:00
Bill Zissimopoulos
4cd2b8c612
tools: make-release.ps1
2022-10-12 16:35:40 +01:00
Bill Zissimopoulos
dacaff41e4
changelog: update for v1.12B2
2022-10-12 15:33:18 +01:00
Bill Zissimopoulos
c187209159
installer: check windows version 7 or higher
2022-10-07 14:09:19 +01:00
Bill Zissimopoulos
a2e92207c5
Merge branch 'master' into pvt-sxs
2022-10-07 12:10:20 +01:00
Bill Zissimopoulos
be27a82879
dll: FspCreateDirectoryFileW
...
On Windows/ARM64 CreateFileW is no longer able to create directories
using the flags FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_POSIX_SEMANTICS.
The new FspCreateDirectoryFileW implements the same semantics and replaces
the previous CreateFileW call.
2022-10-07 11:47:25 +01:00
Bill Zissimopoulos
4f5ad93f00
Merge branch 'master' into pvt-sxs
2022-10-04 15:44:49 +01:00