[libvirt] [PATCH v4 14/23] utils: Convert pollfd array to be allocated

Stefan Berger stefanb at linux.vnet.ibm.com
Thu Jul 11 19:41:42 UTC 2019


Convert the struct pollfd *fds to be allocated rather than residing
on the stack. This prepares it for the next patch where the size of
the array of fds becomes dynamic.

Signed-off-by: Stefan Berger <stefanb at linux.ibm.com>
---
 src/util/vircommand.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/util/vircommand.c b/src/util/vircommand.c
index 9972a491d6..49347a9800 100644
--- a/src/util/vircommand.c
+++ b/src/util/vircommand.c
@@ -2137,6 +2137,7 @@ virCommandProcessIO(virCommandPtr cmd)
     size_t inlen = 0, outlen = 0, errlen = 0;
     size_t inoff = 0;
     int ret = 0;
+    VIR_AUTOFREE(struct pollfd *) fds = NULL;
 
     if (dryRunBuffer || dryRunCallback) {
         VIR_DEBUG("Dry run requested, skipping I/O processing");
@@ -2168,9 +2169,11 @@ virCommandProcessIO(virCommandPtr cmd)
         goto cleanup;
     ret = -1;
 
+    if (VIR_ALLOC_N(fds, 3) < 0)
+        goto cleanup;
+
     for (;;) {
         size_t i;
-        struct pollfd fds[3];
         int nfds = 0;
 
         if (cmd->inpipe != -1) {
-- 
2.20.1




More information about the libvir-list mailing list