mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04: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
1 changed files with 12 additions and 0 deletions
|
|
@ -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 a new issue