Bill Zissimopoulos
ca832988ed
dll,sys: fix issue #369
...
The original WinFsp protocol for shutting down a file system was to issue
an FSP_FSCTL_STOP control code to the fsctl device. This would set the IOQ
to the "stopped" state and would also cancel all active IRP's. Cancelation
of IRP's would sometimes free buffers that may have still been in use by
the user mode file system threads; hence access violation.
To fix this problem a new control code FSP_FSCTL_STOP0 is introduced. The
new file system shutdown protocol is backwards compatible with the original
one and works as follows:
- First the file system process issues an FSP_FSCTL_STOP0 control code which
sets the IOQ to the "stopped" state but does NOT cancel IRP's.
- Then the file system process waits for its dispatcher threads to complete
(see FspFileSystemStopDispatcher).
- Finally the file system process issues an FSP_FSCTL_STOP control code
which stops the (already stopped) IOQ and cancels all IRP's.
2021-05-18 12:30:17 -07:00
Bill Zissimopoulos
33c6e7ee61
sys: fix issue #364
2021-04-16 16:43:34 -07:00
Bill Zissimopoulos
023c925fb6
WinFsp rebranding support
2021-04-12 17:47:34 -07:00
Bill Zissimopoulos
d4a70da611
Merge branch 'pvt-tsfix'
2021-04-08 14:06:52 -07:00
Bill Zissimopoulos
50892bfa19
shared: posix: DistinctPermsForSameOwnerGroup
2021-04-06 15:00:31 -07:00
Bill Zissimopoulos
b2e677a3d3
sys: FspFsvolSetBasicInformation: issue #362
...
According to the FILE_BASIC_INFORMATION doc a file system should not update a file timestamp when it receives a value of -1 in the corresponding time field.
This commit converts a -1 timestamp to a 0 timestamp; this directs a WinFsp file system not to update the corresponding file timestamp.
This commit fixes issue #362
2021-04-06 13:41:35 -07:00
Bill Zissimopoulos
9d5efe5f98
dll: fuse: FileSecurity option
2021-01-25 16:54:59 -08:00
Bill Zissimopoulos
c5b850be35
sys: improve trace functionality
2021-01-25 13:11:10 -08:00
Bill Zissimopoulos
0af0bfbe7c
sys: FspFsvolClose: convert CLOSE requests to synchronous when above the IOQ watermark
2021-01-25 12:45:33 -08:00
Bill Zissimopoulos
1dbcae3985
sys: FspTraceNtStatus: fix spelling mistake
2021-01-25 12:44:59 -08:00
Bill Zissimopoulos
a5726c820b
sys: add trace functionality
2021-01-13 16:15:06 -08:00
gaotxg
a939d9997b
Credential: Default do not save password
...
If user want to save password, click save and credential window won't appear again.
Do not remember password should be default option.
2020-12-30 11:19:57 +08:00
Bill Zissimopoulos
c803ef24f8
dll: fuse: truncate fixed size options
...
Some options (VolumePrefix, FileSystemName, volname) have a fixed maximum size.
This commit adds functionality to truncate user-specified long options to their fixed maximum size.
2020-12-22 15:44:37 -08:00
Bill Zissimopoulos
2d5d058d2f
dll: FspFsctlStartService:make thread safe
2020-12-19 11:05:24 -08:00
Bill Zissimopoulos
8006763367
dotnet: Interop: NotifyInfoInternal: fix FileNameBufOffset
2020-12-18 16:37:08 -08:00
Alberto Alonso
6421dd92a9
Fix an alignment problem in the FspFileSystemNotify interop that would leave a buffer size not aligned to a multiple of 8, and make notify calls fail.
2020-12-02 13:18:42 +02:00
Bill Zissimopoulos
b05d5e286e
dotnet: rename NotifyInfoFilter and NotifyInfoAction
2020-11-27 10:37:22 -08:00
Alberto Alonso
2f1a5b98e2
Update NotifyInfoAction and NotifyInfoFilter enum constants for more readability.
2020-11-26 15:00:03 +02:00
Alberto Alonso
3b90908e01
Document the NotifyInfo fields for the .NET interop layer.
2020-11-24 20:02:02 +02:00
Bill Zissimopoulos
b3058a5e3e
shared: minimal.h: STRTOINT
2020-11-06 09:41:49 -08:00
Bill Zissimopoulos
8109b005be
dll: posix: trustPosixOffset
2020-11-03 14:04:27 -08:00
Bill Zissimopoulos
bd0d6638b0
dll: posix: trustPosixOffset
2020-11-03 12:31:13 -08:00
Bill Zissimopoulos
912703cd77
sys: FspBufferUserBuffer: special case Irp->UserBuffer kernel address
2020-10-30 15:39:56 -07:00
Bill Zissimopoulos
f1cf020272
dll: fuse: allow mount manager mountpoints
2020-10-29 15:28:14 -07:00
Bill Zissimopoulos
5014e8bd35
dotnet: file change notification support
2020-10-23 13:55:36 -07:00
Bill Zissimopoulos
6340811974
dll: fuse: fsp_fuse_notify: handle case-insensitive file systems
2020-10-21 15:45:07 -07:00
Bill Zissimopoulos
cd21d26b93
dll: fuse: fsp_fuse_notify
...
Correctly compute Windows change notification filter and action
from FUSE change notification action.
2020-10-19 18:17:05 -07:00
Bill Zissimopoulos
e59a49992a
sys: FspFileNodeInvalidateCachesAndNotifyChangeByName: flush and purge only
2020-10-17 22:06:49 -07:00
Bill Zissimopoulos
e54c2288f7
dll: fuse: fuse_notify
2020-10-10 10:15:36 -07:00
Bill Zissimopoulos
6b4b1dff6c
sys: notify implementation
2020-10-09 15:19:51 -07:00
Bill Zissimopoulos
92b7989999
tst: winfsp-tests: notify testing
2020-10-09 15:05:31 -07:00
Bill Zissimopoulos
3687df53c6
sys: wait groups and notify implementation
2020-10-09 12:40:49 -07:00
Bill Zissimopoulos
a004e4be10
sys: notify implementation
2020-10-08 20:49:24 -07:00
Bill Zissimopoulos
88edf5723e
sys: notify implementation
2020-10-08 16:56:31 -07:00
Bill Zissimopoulos
7f360827f6
sys: notify implementation
2020-10-08 15:31:41 -07:00
Bill Zissimopoulos
01f91c771d
sys: notify implementation
2020-10-07 17:07:35 -07:00
Bill Zissimopoulos
844fb7171e
inc,dll,sys: notify implementation skeleton
2020-10-06 16:37:33 -07:00
Bill Zissimopoulos
32a5b2bc64
tst: winfsp-tests: rename_backslash_test
2020-10-01 11:46:55 -07:00
Bill Zissimopoulos
5045403d85
sys: FspFsvolSetRenameInformation: tolerate trailing backslash on target name
2020-09-28 16:01:38 -07:00
Bill Zissimopoulos
84e0744c28
sys: FspVolumeTransact: FSP_FSCTL_TRANSACT_INTERNAL
...
Zero out OutputBuffer on error to avoid confusion for fsext providers.
2020-07-29 22:51:17 -07:00
Bill Zissimopoulos
0296502f24
sys: FspFsvolReadNonCached: acquire FileNode shared
...
See GitHub issue #291 for discussion
2020-07-22 15:42:06 -07:00
Bill Zissimopoulos
aa3beba928
sys: silo support
2020-06-05 15:47:19 -07:00
Bill Zissimopoulos
899cd5595d
sys: FspIsNtDdiVersionAvailable
2020-06-01 23:11:33 -07:00
Bill Zissimopoulos
2ffb8a1c97
sys: FSP_FSCTL_QUERY_WINFSP
...
The FSP_FSCTL_QUERY_WINFSP code provides a simple method to determine if
the file system backing a file is a WinFsp file system. To use issue a
DeviceIoControl(Handle, FSP_FSCTL_QUERY_WINFSP, 0, 0, 0, 0, &Bytes, 0)
If the return value is TRUE this is a WinFsp file system.
2020-05-24 21:04:28 -07:00
Bill Zissimopoulos
7c06ead34c
launcher: ignore bad Stderr setting
2020-04-25 12:32:20 -07:00
Bill Zissimopoulos
768b596a76
launcher: add %P variable (user profile directory)
2020-04-25 11:36:30 -07:00
Bill Zissimopoulos
01744e8193
launcher: Stderr registry setting
...
This commit adds a new Stderr registry setting that can be used to redirect
the standard error output of a launched service instance.
2020-04-25 00:48:40 -07:00
Bill Zissimopoulos
3eb115eb22
launcher: SvcInstanceCreate: refactor to use FspLaunchRegGetRecord
2020-04-24 17:49:29 -07:00
Bill Zissimopoulos
a0801674c4
launcher: SvcInstanceCreateProcess: fix checking wrong handle
2020-04-24 16:04:07 -07:00
Bill Zissimopoulos
0268e51099
dll: launch: registry: support Recovery setting
2020-04-16 16:08:55 -07:00