Page MenuHomeFreeBSD

D43833.id.diff
No OneTemporary

D43833.id.diff

diff --git a/sys/compat/linux/linux_util.c b/sys/compat/linux/linux_util.c
--- a/sys/compat/linux/linux_util.c
+++ b/sys/compat/linux/linux_util.c
@@ -79,22 +79,14 @@
linux_pwd_onexec(struct thread *td)
{
struct nameidata nd;
- struct pwd *pwd;
int error;
NDINIT(&nd, LOOKUP, FOLLOW, UIO_SYSSPACE, linux_emul_path);
error = namei(&nd);
if (error != 0) {
- /*
- * Do not bother if we are in chroot or jail.
- */
- pwd = pwd_hold(td);
- if (pwd->pwd_rdir != rootvnode) {
- pwd_drop(pwd);
- return (0);
- }
- pwd_drop(pwd);
- return (error);
+ /* Do not prevent execution if altroot is non-existent. */
+ pwd_altroot(td, NULL);
+ return (0);
}
NDFREE_PNBUF(&nd);
pwd_altroot(td, nd.ni_vp);

File Metadata

Mime Type
text/plain
Expires
Mon, Apr 6, 3:45 PM (14 m, 35 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30982008
Default Alt Text
D43833.id.diff (725 B)

Event Timeline