mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-21 15:45:02 +00:00
In kvm_openfiles/kvm_open, mark the file descriptors as close-on-exec.
Applications can not do this themselves, as the descriptors are hidden behind the opaque `kvm_t' type.
This commit is contained in:
parent
dde97b32ff
commit
f76b74d6d7
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=103224
@ -180,6 +180,10 @@ _kvm_open(kd, uf, mf, flag, errout)
|
||||
_kvm_syserr(kd, kd->program, "%s", mf);
|
||||
goto failed;
|
||||
}
|
||||
if (fcntl(kd->pmfd, F_SETFD, FD_CLOEXEC) < 0) {
|
||||
_kvm_syserr(kd, kd->program, "%s", mf);
|
||||
goto failed;
|
||||
}
|
||||
if (S_ISCHR(st.st_mode)) {
|
||||
/*
|
||||
* If this is a character special device, then check that
|
||||
@ -198,6 +202,10 @@ _kvm_open(kd, uf, mf, flag, errout)
|
||||
_kvm_syserr(kd, kd->program, "%s", _PATH_KMEM);
|
||||
goto failed;
|
||||
}
|
||||
if (fcntl(kd->vmfd, F_SETFD, FD_CLOEXEC) < 0) {
|
||||
_kvm_syserr(kd, kd->program, "%s", _PATH_KMEM);
|
||||
goto failed;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
/*
|
||||
@ -209,6 +217,10 @@ _kvm_open(kd, uf, mf, flag, errout)
|
||||
_kvm_syserr(kd, kd->program, "%s", uf);
|
||||
goto failed;
|
||||
}
|
||||
if (fcntl(kd->nlfd, F_SETFD, FD_CLOEXEC) < 0) {
|
||||
_kvm_syserr(kd, kd->program, "%s", uf);
|
||||
goto failed;
|
||||
}
|
||||
if (_kvm_initvtop(kd) < 0)
|
||||
goto failed;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user