From: Daniel P. Berrangé Date: Mon, 30 Sep 2019 11:39:17 +0000 (+0100) Subject: qemu: sanity check vhost user FD before passing to QEMU X-Git-Tag: v5.8.0-rc1~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ffb8fff9e0a4fd22b303ecc8dbd6a3d8c61c2a4;p=thirdparty%2Flibvirt.git qemu: sanity check vhost user FD before passing to QEMU 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. Reviewed-by: Michal Privoznik Signed-off-by: Daniel P. Berrangé --- 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;