This fixes a problem that showed up during testing of: https://bugzilla.redhat.com/show_bug.cgi?id=881480 Due to a logic error in the function that gets the name of the bridge an interface connects to, any time a bridge was specified directly (type='bridge') rather than indirectly (type='network'), An error would be logged (although the operation would then complete successfully): Network type 6 is not supported The final virReportError() in the function qemuDomainNetGetBridgeName() was apparently avoided in the past with a "goto cleanup" at the end of each case, but the case of bridge somehow no longer has that final goto cleanup. The proper solution is anyway to not rely on goto's, but put the error log inside an else {} clause, so that it's executed only if the type is neither bridge nor network (in reality, this function should only ever be called for those two types, that's why this is an internal error). While making this change, the error message was also tuned to be more correct (since it's not really the type of the network, but the type of the interface, and it *is* otherwise supported, it's just that the interface type in question doesn't *have* a bridge device associated with it, or at least we don't know how to get it). --- src/qemu/qemu_hotplug.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index fbd60de..3dfdb65 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -1268,13 +1268,13 @@ qemuDomainNetGetBridgeName(virConnectPtr conn, virDomainNetDefPtr net) virNetworkFree(network); virSetError(errobj); virFreeError(errobj); - goto cleanup; + } else { + virReportError(VIR_ERR_INTERNAL_ERROR, + _("Interface type %d has no bridge name"), + virDomainNetGetActualType(net)); } - virReportError(VIR_ERR_INTERNAL_ERROR, - _("Network type %d is not supported"), - virDomainNetGetActualType(net)); cleanup: return brname; } -- 1.7.11.7 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list