On 02.02.2015 15:08, Lin Ma wrote:
* Get the live state info of a virtual network through netcf in
networkGetXMLDesc.
* Add --system flag for net-dumpxml to show the live state info.
* Check the live state info in net-destroy.
* Add --force flag for net-destroy to forcibly destroy the virtual network.
* Check the transient interfaces info in iface-unbridge.
---
Lin Ma (3):
bridge_driver: Return the live state info of a given virtual network
virsh: prevent destroying a in-used network for net-destroy
virsh: prevent removing a in-used bridge for iface-unbridge
include/libvirt/libvirt-network.h | 1 +
src/Makefile.am | 3 +
src/network/bridge_driver.c | 141 ++++++++++++++++++++++++++++++++++-
src/network/bridge_driver_platform.h | 7 ++
tests/Makefile.am | 4 +
tools/virsh-interface.c | 25 ++++++-
tools/virsh-network.c | 62 ++++++++++++++-
tools/virsh.pod | 8 +-
8 files changed, 241 insertions(+), 10 deletions(-)
So I've spent some time thinking about this. I don't really like the
idea of producing completely different XML (it doesn't even have
<network/> as its root element!). But I see what you're trying to
achieve. How about putting the bridged interfaces into the network
definition (on request signalized by a flag, of course).
I think we've come to a point where we need to introduce live and config
XML (like we have for domains). We already have that to some extent, but
not truly.
On the other hand, looking into virNetworkDefFormat(), there's this
'@connections' attribute to the <network/> element which is a nonzero
integer if the network is in use. Won't that suffice for what you're
trying to achieve?
Michal