Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add special utimensat(2) flag to allow setting explicit birthtime
Some applications over SMB protocol may inadvertently initialize the inode birthtime to 1980 due to non-standard FreeBSD setutimes() behavior, which applies the mtime timespec to birthtime if it is older than existing birthtime. It is not possible to fix this using existing calls to utimensat(2) or futimens(2). Additionally, SMB clients, may attempt to set birthtime to a date more recent than the mtime. This PR adds a utimensat(2) flag that may be used to specify that an array of three timespecs are being provided rather than two. In this case the third timespec struct specifies the birthtime to be set.
- Loading branch information
Showing
2 changed files
with
39 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters