When assigning the new persistent definition for a transient network (thus making it persistent) the network needs to be marked persistent before actually atempting to assign the definition. --- src/network/bridge_driver.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c index 22bd99b..f0dbd66 100644 --- a/src/network/bridge_driver.c +++ b/src/network/bridge_driver.c @@ -2833,6 +2833,13 @@ static virNetworkPtr networkDefine(virConnectPtr conn, const char *xml) { if (networkValidate(driver, def, false) < 0) goto cleanup; + /* make the network persistent if we're defininig it */ + if ((network = virNetworkFindByName(&driver->networks, def->name))) { + network->persistent = 1; + virNetworkObjUnlock(network); + network = NULL; + } + if (!(network = virNetworkAssignDef(&driver->networks, def, false))) goto cleanup; freeDef = false; -- 1.7.12.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list