Page MenuHomeFreeBSD

open(2): allow O_PATH | O_CREAT
ClosedPublic

Authored by kib on Jan 6 2025, 11:03 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Dec 7, 6:56 AM
Unknown Object (File)
Fri, Dec 5, 1:24 PM
Unknown Object (File)
Thu, Dec 4, 11:19 AM
Unknown Object (File)
Fri, Nov 28, 12:57 AM
Unknown Object (File)
Wed, Nov 26, 1:59 PM
Unknown Object (File)
Tue, Nov 25, 4:56 AM
Unknown Object (File)
Fri, Nov 21, 9:52 PM
Unknown Object (File)
Thu, Nov 20, 5:20 AM
Subscribers

Details

Summary

There is no reason to disallow creating the file opened for path.
More, it might be a useful feature together with O_EXCL.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib requested review of this revision.Jan 6 2025, 11:03 AM

At least tests/sys/file/path_test.c:path_io will need to be updated.

This revision is now accepted and ready to land.Jan 6 2025, 2:07 PM
This revision now requires review to proceed.Jan 6 2025, 11:41 PM
markj added inline comments.
tests/sys/file/path_test.c
691 ↗(On Diff #148843)

Just for good measure, I'd verify that the descriptor really is an O_PATH descriptor. For example, read(pathfd) should fail.

This revision is now accepted and ready to land.Jan 7 2025, 2:10 AM
kib marked an inline comment as done.

Check that O_PATH|O_CREAT returns O_PATH-kind of fd.

This revision now requires review to proceed.Jan 7 2025, 2:34 AM
This revision is now accepted and ready to land.Jan 7 2025, 2:36 AM