Commit Graph

84 Commits

Author SHA1 Message Date
1723179430 dll: FspFsctlStartService: fix bug in non-SxS mode 2022-09-10 17:14:19 +01:00
2fc2c237d3 dll: FspFsctlEnumServices 2022-09-10 16:23:14 +01:00
b99fb9a5cb dll: FspFsctlRegister: sxs-ize driver display name 2022-09-09 23:57:44 +01:00
b43d1f5502 dll: FspFsctlUnregister: do FspFsctlStopService prior to unregister 2022-09-07 14:20:20 +01:00
0b3ce52958 Merge branch 'master' into pvt-sxs 2022-09-01 14:42:27 +01:00
a7bc306b2d dll: FspSxsAppendSuffix 2022-08-20 11:58:00 +01:00
7e59c2e5a6 dll: FspFsctlFixServiceSecurity: deny SERVICE_STOP to Everyone
Although the FSD can now be unloaded, this can only be done safely via
the new FSP_FSCTL_UNLOAD control code. For this reason we disable the
ability to stop the FSD via the Service Manager.
2022-08-19 19:43:48 +01:00
637e8bb8c2 build.version.props: MyFsctlRegisterPath, MyNpRegisterPath, MyEventLogRegisterPath 2022-08-19 17:43:55 +01:00
9670caa3fe sys,dll: FSP_FSCTL_UNLOAD 2022-08-18 11:05:45 +01:00
62a6bbab66 dll: FspSxsSuffix 2022-08-03 17:29:45 +01:00
40ba537dc2 dll: FspSxsIdent 2022-08-03 16:33:13 +01:00
a731f0e5d8 sys,dll: MountUseMountmgrFromFSD 2022-06-27 17:28:24 +01:00
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
43af829d46 sys,dll,inc: FSP_IOCTL_TRANSACT 2022-05-16 21:40:01 +01:00
00d4aba946 github: winfsp org 2022-03-02 18:01:21 +00:00
751eaa69df update source copyright to 2022 2022-01-07 17:30:49 +00:00
6e3a8f70b2 update source copyright to 2021 2021-05-21 15:57:05 -07:00
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
2d5d058d2f dll: FspFsctlStartService:make thread safe 2020-12-19 11:05:24 -08:00
844fb7171e inc,dll,sys: notify implementation skeleton 2020-10-06 16:37:33 -07:00
aa3beba928 sys: silo support 2020-06-05 15:47:19 -07:00
aedf01a384 update source copyright for 2020 2020-01-02 17:50:40 -08:00
4655926d03 sys, dll: mount manager support 2019-09-06 14:24:00 -07:00
565caebe4c sys,dll: FspFileSystemSetMountPoint: mount manager support 2019-09-05 19:58:14 -07:00
d2de5e996c update source copyright for 2019 2019-02-28 10:39:31 -08:00
75ae8daf8f update commercial disclaimer 2018-08-21 18:09:33 -07:00
9501b5771d inc,sys,tst: FSP_FSCTL_VOLUME_PARAMS: fine-grained timeouts 2018-04-21 11:53:14 -07:00
9bd9cf4fbd update source copyright notices for 2018 2018-01-03 15:29:38 -08:00
4fe85222b1 dll: wksid: well known SID's 2017-12-11 15:03:32 -08:00
5d8384a508 src: dll: FspFsctlFixServiceSecurity
- fix GetEffectiveRightsFromAclW ERROR_CIRCULAR_DEPENDENCY
2017-04-12 10:50:27 -07:00
a57325e8af update source copyright notices for 2017 2017-01-05 13:56:18 -08:00
bd952253fb cosmetic fix 2016-10-11 11:39:17 -07:00
c7780cf7fa license: switch to GPLv3 from AGPLv3 2016-10-10 21:33:27 -07:00
817beebb63 inc: fsctl: FSP_FSCTL_VOLUME_PARAMS changes:
- increase size of VolumePrefix
- add FileSystemName field (currently unused)
2016-09-20 15:37:42 -07:00
a4e2ad9dd6 dll: FspFsctlStop: fix problem in call to DeviceIoControl
- The DeviceIoControl was invoked in an incorrect fashion that nevertheless worked in Win64, but not Win32.
2016-07-28 14:56:06 -07:00
9b93c766c3 dll: fsctl, fuse: preflight check 2016-06-02 20:21:34 -07:00
222f015273 src: dll: FspFsctlStartService: return STATUS_NO_SUCH_DEVICE when WinFsp FSD does not exist 2016-05-19 19:17:07 -07:00
9addfa5899 dll: FspEventLogRegister, FspEventLogUnregister 2016-05-06 15:05:36 -07:00
de973fa5ab dll: FspFileSystemRegister, FspFileSystemUnregister: rename and place in fsctl.c 2016-05-05 11:14:23 -07:00
cbb7d943bd dll: fsctl: FspFsctlStartService 2016-05-04 16:06:14 -07:00
968de4689c inc,src,tst: add AGPLv3 notices 2016-04-25 14:29:05 -07:00
1bcd3cec0a sys, dll: NetworkProvider implementation (NPGetConnection) 2016-04-19 14:29:07 -07:00
7ff99da000 update copyright notices for 2016 2016-03-17 14:59:46 -07:00
1b533512d3 sys, dll: FSP_FSCTL_STOP 2016-02-16 20:37:13 -08:00
d1fe27f996 sys: FSP_FSCTL_TRANSACT/FSP_FSCTL_TRANSACT_BATCH 2016-02-15 15:07:05 -08:00
56a9d37135 dll: FspFsctlCreateVolume: use FILE_FLAG_OVERLAPPED when opening control device to allow concurrent DeviceIoControl's 2016-02-13 12:04:28 -08:00
f3d84c7b88 rename *Path to *Name in multiple instances 2016-01-13 15:16:46 -08:00
d2828b3e8c sys: create: open UserMode AccessToken handle in FspFsvolCreatePrepare and close it properly in FspFsvolCreateRequestFini 2016-01-02 16:16:00 -08:00
223b287453 dll: WIP 2015-12-31 22:53:17 -08:00
838adc67bb Major refactoring: testing 2015-12-23 12:30:39 -08:00