diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 7cbe9ae0aa..d50863ff96 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -3724,6 +3724,19 @@ virQEMUCapsSupportsChardev(virDomainDefPtr def, } +bool +virQEMUCapsSupportsVmport(virQEMUCapsPtr qemuCaps, + const virDomainDef *def) +{ + if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MACHINE_VMPORT_OPT)) + return false; + + return qemuDomainMachineIsI440FX(def) || + qemuDomainMachineIsQ35(def) || + STREQ(def->os.machine, "isapc"); +} + + bool virQEMUCapsIsMachineSupported(virQEMUCapsPtr qemuCaps, const char *canonical_machine) diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 48c8f9601d..81557b7f91 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -263,6 +263,9 @@ bool virQEMUCapsGet(virQEMUCapsPtr qemuCaps, bool virQEMUCapsHasPCIMultiBus(virQEMUCapsPtr qemuCaps, virDomainDefPtr def); +bool virQEMUCapsSupportsVmport(virQEMUCapsPtr qemuCaps, + const virDomainDef *def); + char *virQEMUCapsFlagsString(virQEMUCapsPtr qemuCaps); const char *virQEMUCapsGetBinary(virQEMUCapsPtr qemuCaps);