373 Commits

Author SHA1 Message Date
Bill Zissimopoulos
91aa0ac2d0
inc: winfsp.h: fix source doc for Delete 2021-10-22 11:39:05 +01:00
Bill Zissimopoulos
bb3e92df6c
sys, dll: implement POSIX semantics for Rename 2021-10-21 15:39:25 +01:00
Bill Zissimopoulos
19823d84de
sys,dll,inc: implement new Delete design and POSIX semantics 2021-10-19 15:23:15 +01:00
Bill Zissimopoulos
6e3a8f70b2
update source copyright to 2021 2021-05-21 15:57:05 -07:00
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
Paweł Wegner
f62aa00a1e inc: don't redeclare _FILE_FULL_EA_INFORMATION for mingw
mingw-w64 declares _FILE_FULL_EA_INFORMATION since Jan 18, 2010 [1].

The change allows the winfsp client library to be consumed by projects built with mingw.

[1]: afd1465722
2021-05-14 14:08:02 +02:00
Bill Zissimopoulos
d0d67998c1
inc: fsctl.h: fix class guid's when used outside our build system 2021-04-13 15:33:57 -07:00
Bill Zissimopoulos
023c925fb6
WinFsp rebranding support 2021-04-12 17:47:34 -07:00
Bill Zissimopoulos
9d5efe5f98
dll: fuse: FileSecurity option 2021-01-25 16:54:59 -08:00
Bill Zissimopoulos
1b7a78edff
inc: fuse: fuse_invalidate 2020-10-22 14:46:13 -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
e54c2288f7
dll: fuse: fuse_notify 2020-10-10 10:15:36 -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
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
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
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
0268e51099
dll: launch: registry: support Recovery setting 2020-04-16 16:08:55 -07:00
Bill Zissimopoulos
4b5b562307
inc: winfsp_fuse.h: fix memset comment 2020-03-21 15:44:02 -07:00
benrubson
76ec0420d1 Mute a GCC warning
solves #287
2020-02-29 23:58:51 +01:00
Bill Zissimopoulos
bf6d56ceac
inc,sys,tst: FSP_FSCTL_VOLUME_PARAMS::RejectIrpPriorToTransact0 2020-02-03 16:38:55 -08:00
Bill Zissimopoulos
51350d5a42
inc,sys,tst: FSP_FSCTL_VOLUME_PARAMS::RejectIrpPriorToTransact 2020-02-03 14:59:23 -08:00
Bill Zissimopoulos
aedf01a384
update source copyright for 2020 2020-01-02 17:50:40 -08:00
Bill Zissimopoulos
5110b3c5a1
sys: dirctl: support directory marker as FUSE style next offset 2019-10-30 16:40:48 -07:00
Bill Zissimopoulos
c415c87195
dll: FspMountSet, FspMountRemove 2019-09-24 15:34:01 -07:00
Bill Zissimopoulos
4655926d03
sys, dll: mount manager support 2019-09-06 14:24:00 -07:00
Bill Zissimopoulos
565caebe4c
sys,dll: FspFileSystemSetMountPoint: mount manager support 2019-09-05 19:58:14 -07:00
Bill Zissimopoulos
b637a72ec8 sys: FspFsextProvider 2019-06-18 16:11:38 -07:00
Bill Zissimopoulos
ed31a187ac opt/fsext: kernel mode winfsp extension 2019-06-14 18:34:19 -07:00
Bill Zissimopoulos
781deff06f sys: default TransactTimeout changes 2019-06-11 17:53:34 -07:00
Bill Zissimopoulos
c01402443d wslinux support: ATOMIC_CREATE_ECP_CONTEXT 2019-04-27 15:30:57 -07:00
Bill Zissimopoulos
732e6cc38c
grand EaSize patch; passes winfsp-tests and ifstest 2019-03-21 18:14:15 -07:00
Bill Zissimopoulos
62b0e889b2
sys: FileEaInformation and EaSize support 2019-03-21 14:05:17 -07:00
Bill Zissimopoulos
8c6d037332
dll: fuse: extended attributes support 2019-03-20 14:32:00 -07:00
Bill Zissimopoulos
0664b492c8
inc: fsctl: fix FSP_FSCTL_VOLUME_PARAMS sizes 2019-03-19 16:29:08 -07:00
Bill Zissimopoulos
d8686a7726
tst: memfs: extended attributes support 2019-03-13 21:44:10 -07:00
Bill Zissimopoulos
a811cd2cf8
sys, dll: extended attributes: checkpoint 2019-03-13 14:29:49 -07:00
Bill Zissimopoulos
d2de5e996c
update source copyright for 2019 2019-02-28 10:39:31 -08:00
Colin Atkinson
791a2162a3 fix: Make FlushAndPurgeOnCleanup accessible in C++
Adds the appropriate setters and getters to the C++ API.
2019-02-22 11:14:48 -05:00
Bill Zissimopoulos
d1c15b43ca
Merge pull request #214 from felfert/fix-fuse-ioctl
Fix #213 and a typo in macro FSP_FUSE_CTLCODE_FROM_IOCTL
2019-02-12 10:29:55 -08:00
Fritz Elfert
f97b8fcc3a Fix #213 and a typo in macro FSP_FUSE_CTLCODE_FROM_IOCTL 2019-02-12 11:51:07 +01:00
Bill Zissimopoulos
ab6e07853c
Merge branch 'release/1.4' 2018-12-08 13:56:50 -08:00
Bill Zissimopoulos
0f185587c9
dll: np: implement custom Credential Provider logic 2018-11-29 21:05:57 -08:00
Bill Zissimopoulos
e0a6312387
Merge branch 'release/1.4' 2018-11-27 16:27:15 -08:00
Bill Zissimopoulos
3119922708
np, launcher: allow RunAs=. registry setting 2018-11-26 13:29:34 -08:00
Bill Zissimopoulos
4d49039abe
sys: FspFastIoQueryOpen: access control
Extend the WinFsp kernel-user mode protocol to allow passing
security descriptors that can then be used for access control
during FastIoQueryOpen.
2018-10-04 13:21:29 -07:00
Bill Zissimopoulos
1aab4662e5
inc, sys, dotnet: FSP_FSCTL_VOLUME_PARAMS::AllowOpenInKernelMode 2018-10-02 11:47:51 -07:00
Bill Zissimopoulos
24b96e7e1b inc, dll, dotnet: FSP_FILE_SYSTEM_INTERFACE::SetDelete 2018-08-29 15:45:02 -07:00
Bill Zissimopoulos
75ae8daf8f
update commercial disclaimer 2018-08-21 18:09:33 -07:00