git: 9c18d55a768a - main - fexecve(2): call out a scenario where you want !O_EXEC
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 01 May 2026 03:03:06 UTC
The branch main has been updated by kevans:
URL: https://cgit.FreeBSD.org/src/commit/?id=9c18d55a768a3e60ecaba1325e9a3e00a25dee26
commit 9c18d55a768a3e60ecaba1325e9a3e00a25dee26
Author: Kyle Evans <kevans@FreeBSD.org>
AuthorDate: 2026-05-01 03:02:55 +0000
Commit: Kyle Evans <kevans@FreeBSD.org>
CommitDate: 2026-05-01 03:02:55 +0000
fexecve(2): call out a scenario where you want !O_EXEC
We note a reason why you might need it, but there's an equally important
reason you may need to omit it: interpreted programs. Add a note
accordingly, along with the workaround configuration if there's reason
you can't help it.
PR: 294780
Reviewed by: Jan Bramkamp <crest_freebsd_rlwinm.de>, kib
Differential Revision: https://reviews.freebsd.org/D56704
---
lib/libsys/execve.2 | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/lib/libsys/execve.2 b/lib/libsys/execve.2
index dc85b9321e48..5562e198239a 100644
--- a/lib/libsys/execve.2
+++ b/lib/libsys/execve.2
@@ -25,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd July 02, 2025
+.Dd April 29, 2026
.Dt EXECVE 2
.Os
.Sh NAME
@@ -232,6 +232,17 @@ is to use the
.Dv O_EXEC
flag when opening
.Fa fd .
+Opening without
+.Dv O_EXEC
+may be necessary in the case of executing an interpreted program, as the
+interpreter will not be able to acquire a descriptor to the script for reading
+without mounting
+.Xr fdescfs 4
+on
+.Pa /dev/fd
+with the
+.Cm nodup
+option.
Note that the file to be executed can not be open for writing.
.Sh RETURN VALUES
As the