[libvirt] [PATCH 1/4] util: Allow virProcessSetNamespaces() to have sparse FD list

Michal Privoznik mprivozn at redhat.com
Thu Aug 27 01:06:51 UTC 2015


So far, the virProcessSetNamespaces() takes an array of FDs that
it tries to set namespace on. However, in the very next commit
this array may be sparse, having some -1's in it. Teach the
function to cope with that.

Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
---
 src/util/virprocess.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/util/virprocess.c b/src/util/virprocess.c
index 77a038a..e6b78ef 100644
--- a/src/util/virprocess.c
+++ b/src/util/virprocess.c
@@ -705,6 +705,9 @@ int virProcessSetNamespaces(size_t nfdlist,
         return -1;
     }
     for (i = 0; i < nfdlist; i++) {
+        if (fdlist[i] < 0)
+            continue;
+
         /* We get EINVAL if new NS is same as the current
          * NS, or if the fd namespace doesn't match the
          * type passed to setns()'s second param. Since we
-- 
2.4.6




More information about the libvir-list mailing list