Ensure that the FD we're passing to QEMU is actually open, so we get a
sane error message upfront instead of telling QEMU to use a closed FD.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
src/qemu/qemu_command.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 77470a6037..8c979fdf65 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -4704,6 +4704,12 @@ qemuBuildVhostUserChardevStr(const char *alias,
{
char *chardev = NULL;
+ if (*fd == -1) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("Attempt to pass closed vhostuser FD"));
+ return NULL;
+ }
+
if (virAsprintf(&chardev, "socket,id=chr-vu-%s,fd=%d", alias, *fd) <
0)
return NULL;
--
2.21.0