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)
Wed, Feb 19, 11:57 PM
Unknown Object (File)
Tue, Feb 18, 12:56 PM
Unknown Object (File)
Mon, Feb 17, 7:03 PM
Unknown Object (File)
Wed, Feb 12, 4:58 PM
Unknown Object (File)
Tue, Feb 11, 11:56 PM
Unknown Object (File)
Sun, Feb 9, 6:55 PM
Unknown Object (File)
Thu, Feb 6, 9:41 PM
Unknown Object (File)
Thu, Feb 6, 9:38 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