Page MenuHomeFreeBSD

Use execve(2) instead of fexecve(2).
AbandonedPublic

Authored by crest_freebsd_rlwinm.de on Apr 28 2026, 5:49 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Sep 17, 7:29 PM
Unknown Object (File)
Thu, Sep 17, 7:10 PM
Unknown Object (File)
Mon, Sep 7, 11:45 PM
Unknown Object (File)
Sun, Sep 6, 1:36 AM
Unknown Object (File)
Sat, Sep 5, 3:18 AM
Unknown Object (File)
Wed, Sep 2, 2:51 PM
Unknown Object (File)
Aug 22 2026, 8:27 PM
Unknown Object (File)
Aug 22 2026, 12:33 PM
Subscribers

Details

Reviewers
None
Summary

The dynamic jail.conf is probably a (shell) script.
In that case fexecve(2) will result in kernel running
the interpreter with the script as argument e.g. /dev/fd/$n.
This only works if /dev/fd was mounted with the non-default "nodup"
option, because the kernel doesn't honor O_RDONLY | O_EXEC
and instead opens the file (description) with just FEXEC.

See PR #294780

Event: Wiesbaden Hackathon 202604

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 72621
Build 69504: arc lint + arc unit