|
Revision tags: release/12.4.0, release/13.1.0 |
|
| #
9258e9e3 |
| 05-Dec-2021 |
Konstantin Belousov <[email protected]> |
fcntl(2): add F_KINFO operation
(cherry picked from commit 794d3e8e63f4a6ebc8926030b6c937109ddc5485)
|
|
Revision tags: release/12.3.0 |
|
| #
824cca59 |
| 06-May-2021 |
Konstantin Belousov <[email protected]> |
openat(2): add O_EMPTY_PATH
(cherry picked from commit 5e7cdf1817924f8ae0333c0b53c2da32f35b65ea)
|
|
Revision tags: release/13.0.0 |
|
| #
f1d1021f |
| 07-Apr-2021 |
Konstantin Belousov <[email protected]> |
O_PATH: allow vnode kevent filter on such files
(cherry picked from commit bbf7a4e878ed6828d13c7029c128a7e60dc25391)
|
| #
b0c1b382 |
| 18-Mar-2021 |
Konstantin Belousov <[email protected]> |
open(2): Implement O_PATH
(cherry picked from commit 8d9ed174f3afba5f114742447e622fc1173d4774)
|
| #
73a642c4 |
| 07-Mar-2021 |
Konstantin Belousov <[email protected]> |
Add AT_EMPTY_PATH for several *at(2) syscalls
(cherry picked from commit 509124b62616f73dcdc42263ee109392dafafd99)
|
| #
9418bb8a |
| 11-Mar-2021 |
Konstantin Belousov <[email protected]> |
AT_RESOLVE_BENEATH is bsd-specific
(cherry picked from commit d51b4b0aac43d9d25f7eb3f17b2d3034a5c851d8)
|
| #
6da53183 |
| 16-Feb-2021 |
Konstantin Belousov <[email protected]> |
open(2): Remove O_BENEATH and AT_BENEATH
(cherry picked from commit 20e91ca36a56b8db1e6677f577ad011b66dd6eb3)
|
| #
2947fc2c |
| 29-Jan-2021 |
Konstantin Belousov <[email protected]> |
lockf: ensure atomicity of lockf for open(O_CREAT|O_EXCL|O_EXLOCK)
(cherry picked from commit fa3bd463cee5c3abeac29a83dc86eb3abfa97b06) (cherry picked from commit 662283b1088d6488671b90ab18a66a997c5
lockf: ensure atomicity of lockf for open(O_CREAT|O_EXCL|O_EXLOCK)
(cherry picked from commit fa3bd463cee5c3abeac29a83dc86eb3abfa97b06) (cherry picked from commit 662283b1088d6488671b90ab18a66a997c526448)
show more ...
|
| #
da3ef8e6 |
| 08-Jan-2021 |
Thomas Munro <[email protected]> |
Fix conflicting value of O_DSYNC.
O_RESOLVE_BENEATH recently took value 0x00800000, but I failed to spot that while rebasing. Let's use 0x01000000 for the new O_DSYNC flag.
Reported by: kevans
|
| #
a5e28403 |
| 07-Jan-2021 |
Thomas Munro <[email protected]> |
open(2): Add O_DSYNC flag.
POSIX O_DSYNC means that writes include an implicit fdatasync(2), just as O_SYNC implies fsync(2).
VOP_WRITE() functions that understand the new IO_DATASYNC flag can act
open(2): Add O_DSYNC flag.
POSIX O_DSYNC means that writes include an implicit fdatasync(2), just as O_SYNC implies fsync(2).
VOP_WRITE() functions that understand the new IO_DATASYNC flag can act accordingly, but we'll still pass down IO_SYNC so that file systems that don't understand it will continue to provide the stronger O_SYNC behaviour.
Flag also applies to fcntl(2).
Reviewed by: kib, delphij Differential Revision: https://reviews.freebsd.org/D25090
show more ...
|
|
Revision tags: release/12.2.0 |
|
| #
1317da43 |
| 22-Sep-2020 |
Konstantin Belousov <[email protected]> |
Add O_RESOLVE_BENEATH and AT_RESOLVE_BENEATH to mimic Linux' RESOLVE_BENEATH.
It is like O_BENEATH, but disables to walk out of the subtree rooted in the starting directory. O_BENEATH does not care
Add O_RESOLVE_BENEATH and AT_RESOLVE_BENEATH to mimic Linux' RESOLVE_BENEATH.
It is like O_BENEATH, but disables to walk out of the subtree rooted in the starting directory. O_BENEATH does not care if path walks out if it returned.
Requested by: Dan Gohman <[email protected]> PR: 248335 Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D25886
show more ...
|
| #
f6e54eb3 |
| 01-Sep-2020 |
Mateusz Guzik <[email protected]> |
sys: clean up empty lines in .c and .h files
|
|
Revision tags: release/11.4.0 |
|
| #
6a5abb1e |
| 02-Feb-2020 |
Kyle Evans <[email protected]> |
Provide O_SEARCH
O_SEARCH is defined by POSIX [0] to open a directory for searching, skipping permissions checks on the directory itself after the initial open(). This is close to the semantics we'v
Provide O_SEARCH
O_SEARCH is defined by POSIX [0] to open a directory for searching, skipping permissions checks on the directory itself after the initial open(). This is close to the semantics we've historically applied for O_EXEC on a directory, which is UB according to POSIX. Conveniently, O_SEARCH on a file is also explicitly undefined behavior according to POSIX, so O_EXEC would be a fine choice. The spec goes on to state that O_SEARCH and O_EXEC need not be distinct values, but they're not defined to be the same value.
This was pointed out as an incompatibility with other systems that had made its way into libarchive, which had assumed that O_EXEC was an alias for O_SEARCH.
This defines compatibility O_SEARCH/FSEARCH (equivalent to O_EXEC and FEXEC respectively) and expands our UB for O_EXEC on a directory. O_EXEC on a directory is checked in vn_open_vnode already, so for completeness we add a NOEXECCHECK when O_SEARCH has been specified on the top-level fd and do not re-check that when descending in namei.
[0] https://pubs.opengroup.org/onlinepubs/9699919799/
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D23247
show more ...
|
| #
d3cc5354 |
| 17-Jan-2020 |
Mateusz Guzik <[email protected]> |
vfs: provide F_ISUNIONSTACK as a kludge for libc
Prior to introduction of this op libc's readdir would call fstatfs(2), in effect unnecessarily copying kilobytes of data just to check fs name and a
vfs: provide F_ISUNIONSTACK as a kludge for libc
Prior to introduction of this op libc's readdir would call fstatfs(2), in effect unnecessarily copying kilobytes of data just to check fs name and a mount flag.
Reviewed by: kib (previous version) Differential Revision: https://reviews.freebsd.org/D23162
show more ...
|
|
Revision tags: release/12.1.0 |
|
| #
af755d3e |
| 25-Sep-2019 |
Kyle Evans <[email protected]> |
[1/3] Add mostly Linux-compatible file sealing support
File sealing applies protections against certain actions (currently: write, growth, shrink) at the inode level. New fileops are added to accomm
[1/3] Add mostly Linux-compatible file sealing support
File sealing applies protections against certain actions (currently: write, growth, shrink) at the inode level. New fileops are added to accommodate seals - EINVAL is returned by fcntl(2) if they are not implemented.
Reviewed by: markj, kib Differential Revision: https://reviews.freebsd.org/D21391
show more ...
|
|
Revision tags: release/11.3.0 |
|
| #
a1304030 |
| 06-Apr-2019 |
Mariusz Zaborski <[email protected]> |
Introduce funlinkat syscall that always us to check if we are removing the file associated with the given file descriptor.
Reviewed by: kib, asomers Reviewed by: cem, jilles, brooks (they reviewed p
Introduce funlinkat syscall that always us to check if we are removing the file associated with the given file descriptor.
Reviewed by: kib, asomers Reviewed by: cem, jilles, brooks (they reviewed previous version) Discussed with: pjd, and many others Differential Revision: https://reviews.freebsd.org/D14567
show more ...
|
|
Revision tags: release/12.0.0 |
|
| #
4f77f488 |
| 25-Oct-2018 |
Konstantin Belousov <[email protected]> |
Implement O_BENEATH and AT_BENEATH.
Flags prevent open(2) and *at(2) vfs syscalls name lookup from escaping the starting directory. Supposedly the interface is similar to the same proposed Linux fl
Implement O_BENEATH and AT_BENEATH.
Flags prevent open(2) and *at(2) vfs syscalls name lookup from escaping the starting directory. Supposedly the interface is similar to the same proposed Linux flags.
Reviewed by: jilles (code, previous version of manpages), 0mp (manpages) Discussed with: allanjude, emaste, jonathan Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D17547
show more ...
|
|
Revision tags: release/11.2.0 |
|
| #
51369649 |
| 20-Nov-2017 |
Pedro F. Giffuni <[email protected]> |
sys: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 3-Clause license.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier for
sys: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 3-Clause license.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts.
Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point.
show more ...
|
|
Revision tags: release/10.4.0, release/11.1.0 |
|
| #
fbbd9655 |
| 28-Feb-2017 |
Warner Losh <[email protected]> |
Renumber copyright clause 4
Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is
Renumber copyright clause 4
Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point.
Submitted by: Jan Schaumann <[email protected]> Pull Request: https://github.com/freebsd/freebsd/pull/96
show more ...
|
|
Revision tags: release/11.0.1, release/11.0.0, release/10.3.0 |
|
| #
ce958bde |
| 17-Jan-2016 |
Konstantin Belousov <[email protected]> |
When cleaning up from failed adv locking and checking for write, do not call VOP_CLOSE() manually. Instead, delegate the close to fo_close() performed as part of the fdrop() on the file failed to op
When cleaning up from failed adv locking and checking for write, do not call VOP_CLOSE() manually. Instead, delegate the close to fo_close() performed as part of the fdrop() on the file failed to open. For this, finish constructing file on error, in particular, set f_vnode and f_ops.
Forcibly resetting f_ops to badfileops disabled additional cleanups performed by fo_close() for some file types, in this case it was noted that cdevpriv data was corrupted. Since fo_close() call must be enabled for some file types, it makes more sense to enable it for all files opened through vn_open_cred().
In collaboration with: pho Sponsored by: The FreeBSD Foundation MFC after: 2 weeks
show more ...
|
| #
cccac8a1 |
| 22-Dec-2015 |
Konstantin Belousov <[email protected]> |
Make it possible for the cdevsw d_close() driver method to detect last close and close due to revoke(2)-like operation.
A new FLASTCLOSE flag indicates that this is last close. FREVOKE is set for r
Make it possible for the cdevsw d_close() driver method to detect last close and close due to revoke(2)-like operation.
A new FLASTCLOSE flag indicates that this is last close. FREVOKE is set for revokes, and FNONBLOCK is also set, same as is already done for VOP_CLOSE() call from vgonel().
The flags reuse user open(2) flags which are never stored in f_flag, to not consume bit space in the ABI visible way. Assert this with the static check.
Requested and reviewed by: bde Sponsored by: The FreeBSD Foundation MFC after: 2 weeks
show more ...
|
|
Revision tags: release/10.2.0 |
|
| #
d5fec489 |
| 22-Apr-2015 |
Craig Rodrigues <[email protected]> |
Support file verification in MAC.
* Add VCREAT flag to indicate when a new file is being created * Add VVERIFY to indicate verification is required * Both VCREAT and VVERIFY are only passed on the M
Support file verification in MAC.
* Add VCREAT flag to indicate when a new file is being created * Add VVERIFY to indicate verification is required * Both VCREAT and VVERIFY are only passed on the MAC method vnode_check_open and are removed from the accmode after * Add O_VERIFY flag to rtld open of objects * Add 'v' flag to __sflags to set O_VERIFY flag.
Submitted by: Steve Kiernan <[email protected]> Obtained from: Juniper Networks, Inc. GitHub Pull Request: https://github.com/freebsd/freebsd/pull/27 Relnotes: yes
show more ...
|
|
Revision tags: release/10.1.0, release/9.3.0 |
|
| #
edc63b46 |
| 17-Apr-2014 |
Jilles Tjoelker <[email protected]> |
fcntl.h: Make visible various POSIX.1-2008 features.
Also, remove #if __BSD_VISIBLE where it is redundant. When __BSD_VISIBLE is defined to 1, __POSIX_VISIBLE, __XSI_VISIBLE and __ISO_C_VISIBLE are
fcntl.h: Make visible various POSIX.1-2008 features.
Also, remove #if __BSD_VISIBLE where it is redundant. When __BSD_VISIBLE is defined to 1, __POSIX_VISIBLE, __XSI_VISIBLE and __ISO_C_VISIBLE are also defined to the newest supported version.
PR: 188173 Reviewed by: pluknet
show more ...
|
|
Revision tags: release/10.0.0, release/9.2.0 |
|
| #
ffeed888 |
| 25-Aug-2013 |
Jilles Tjoelker <[email protected]> |
Fix fcntl F_GETFL F_SETFL for files opened execute-only (O_EXEC).
The FFLAGS and OFLAGS now work correctly also for files opened with O_EXEC. Except possibly fuse, the other users pass values withou
Fix fcntl F_GETFL F_SETFL for files opened execute-only (O_EXEC).
The FFLAGS and OFLAGS now work correctly also for files opened with O_EXEC. Except possibly fuse, the other users pass values without O_EXEC set. fuse appears to assume O_EXEC is handled correctly.
Although F_SETFL may not be commonly used for execute-only file descriptors, F_GETFL may be useful to find the access mode.
show more ...
|
|
Revision tags: release/8.4.0, release/9.1.0 |
|
| #
d8c1da8b |
| 27-Jul-2012 |
Konstantin Belousov <[email protected]> |
Add F_DUP2FD_CLOEXEC. Apparently Solaris 11 already did this.
Submitted by: Jukka A. Ukkonen <jau iki fi> PR: standards/169962 MFC after: 1 week
|