On BSD-like systems "/dev/fd" serves the same purpose as
"/proc/self/fd". And since procfs is usually not mounted, on such
systems we can use "/dev/fd" instead.
Resolves:
https://gitlab.com/libvirt/libvirt/-/issues/518
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/util/vircommand.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/util/vircommand.c b/src/util/vircommand.c
index 8c06e19723..2b3b125e5f 100644
--- a/src/util/vircommand.c
+++ b/src/util/vircommand.c
@@ -518,6 +518,8 @@ virCommandMassCloseGetFDs(virBitmap *fds)
* onto child process (well, the one we will exec soon since this
* is called from the child). */
return virCommandMassCloseGetFDsDir(fds, "/proc/self/fd");
+# elif defined(__APPLE__) || defined(__FreeBSD__)
+ return virCommandMassCloseGetFDsDir(fds, "/dev/fd");
# else
virBitmapSetAll(fds);
return 0;
--
2.41.0