751eaa69df
update source copyright to 2022
2022-01-07 17:30:49 +00:00
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
00219f29cf
sys: POSIX rename improvements
2021-11-25 10:35:22 +00:00
c4f994f8f6
sys: FspFsvolSetDispositionInformation
...
return STATUS_FILE_DELETED if file is already deleted
2021-11-24 18:31:48 +00:00
91211f6ccb
sys: reimplement POSIX unlink
2021-11-24 16:03:31 +00:00
d72fe2ee33
sys: FspFsvolSetDispositionInformation: ignore FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK flag
2021-11-19 17:16:36 +00:00
bb3e92df6c
sys, dll: implement POSIX semantics for Rename
2021-10-21 15:39:25 +01:00
19823d84de
sys,dll,inc: implement new Delete design and POSIX semantics
2021-10-19 15:23:15 +01:00
6e3a8f70b2
update source copyright to 2021
2021-05-21 15:57:05 -07:00
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
32a5b2bc64
tst: winfsp-tests: rename_backslash_test
2020-10-01 11:46:55 -07:00
5045403d85
sys: FspFsvolSetRenameInformation: tolerate trailing backslash on target name
2020-09-28 16:01:38 -07:00
aedf01a384
update source copyright for 2020
2020-01-02 17:50:40 -08:00
b18df6bba8
sys: release rename lock when doing oplock breaks
2019-12-08 14:27:02 -08:00
7f084787e3
sys: fix issues found by static analyzer
2019-06-28 15:21:36 -07:00
c01402443d
wslinux support: ATOMIC_CREATE_ECP_CONTEXT
2019-04-27 15:30:57 -07:00
7cb29a4db3
sys: remove unused variables
2019-04-18 17:22:58 -07:00
969651f5f6
sys: improve support for FileStatLxInformation
2019-04-18 15:57:22 -07:00
2b0d204ff1
sys: FileStatInformation is missing on old WDK's
2019-04-16 21:28:09 -07:00
851d0758d9
sys: define FSP_FILE_STAT*_INFORMATION that are missing on some WDK's
2019-04-16 15:55:13 -07:00
ce83619728
sys: FileStatLxInformation and friends
2019-04-15 15:04:31 -07:00
351b4f5294
sys: fileinfo: fix unnecessary STATUS_BUFFER_TOO_SMALL
2019-04-03 09:52:00 -07:00
732e6cc38c
grand EaSize patch; passes winfsp-tests and ifstest
2019-03-21 18:14:15 -07:00
62b0e889b2
sys: FileEaInformation and EaSize support
2019-03-21 14:05:17 -07:00
d2de5e996c
update source copyright for 2019
2019-02-28 10:39:31 -08:00
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
1aab4662e5
inc, sys, dotnet: FSP_FSCTL_VOLUME_PARAMS::AllowOpenInKernelMode
2018-10-02 11:47:51 -07:00
02a4d3641e
sys: implement FastIo operations
...
FspFastIoQueryOpen: return FALSE when RelatedFileObject is not NULL
2018-10-02 11:12:26 -07:00
3dfbdc313b
sys: implement FastIo operations
...
DEBUGTEST
2018-10-02 11:12:25 -07:00
3a286324ff
sys: implement FastIo operations
...
FspFastIoQueryOpen
2018-10-02 11:12:25 -07:00
0d849ffcc8
sys: implement FastIo operations
...
FastIoQueryBasicInfo, FastIoQueryStandardInfo, FastIoQueryNetworkOpenInfo
2018-10-02 11:12:24 -07:00
75ae8daf8f
update commercial disclaimer
2018-08-21 18:09:33 -07:00
9bd9cf4fbd
update source copyright notices for 2018
2018-01-03 15:29:38 -08:00
92e7dbad21
sys: Create and Rename requests should include the originating process PID
2017-10-11 16:28:50 -07:00
4812f5bbd0
sys: Create and Rename requests should include the originating process PID
2017-10-11 16:25:22 -07:00
26485ffbd6
sys: originating process id
2017-07-12 20:54:12 -07:00
a57325e8af
update source copyright notices for 2017
2017-01-05 13:56:18 -08:00
27315c1111
sys: FspFsvolQueryInformation,FspFsvolSetInformation:
...
- return STATUS_INVALID_PARAMETER on volume handles
2016-12-30 14:40:28 -08:00
bd38a39dbd
sys: FileHardLinkInformation,FileLinkInformation: return STATUS_NOT_SUPPORTED
2016-12-30 14:14:54 -08:00
766734a8e3
sys: FileAlternateNameInformation: return STATUS_OBJECT_NAME_NOT_FOUND
2016-12-30 13:59:56 -08:00
843d3f0362
sys: FspFsvolSetBasicInformation: invalidate dir caches
2016-12-30 11:01:52 -08:00
5824a24bf4
sys: FspFileNodeNotifyChange: significant improvements
2016-12-27 21:30:56 -08:00
ff3436718c
sys: FSP_FILE_DESC::DidSetMetadata
2016-12-23 16:26:16 -08:00
69f6f661ba
sys,dll: Cleanup, file times overhaul
2016-12-23 15:30:39 -08:00
7b94f2bebf
sys: FspFileNodeSetFileInfo: TruncateOnClose
2016-12-21 16:45:01 -08:00
c897ddd864
sys,dll: Cleanup/TruncateOnClose overhaul
2016-12-21 16:09:24 -08:00
eec63332e0
sys: fileinfo: correctly set AllInformation and StandardInformation DeletePending flag
2016-12-19 13:36:11 -08:00
94ea4f65f7
sys: FspFileNameIsValid, FspFileNameIsValidPattern: check path component length
...
tst: memfs: allow filenames to be 512 chars long
2016-12-18 11:51:23 -08:00
299605b8fc
sys: FILE_ATTRIBUTE_DIRECTORY support
2016-12-17 12:13:53 -08:00
6de998ff98
sys: rename: capture correct security context
2016-12-12 13:20:42 -08:00