I would like to enhance libvirt's network API to allow enacting any
changes in definition immediately, as an alternative to the current
behavior of saving the changes right away, but not using them until
the next time the network is destroyed and re-started.
This could easily be handled by a flag passed to
virNetworkDefineXML(). Unfortunately, virNetworkDefineXML() was added
to libvirt before we came up with the idea of adding a flags arg to
every new API (just for things like this). To remedy this, I've
effectively duplicated that API with a new API,
virNetworkDefineXMLFlags(), which currently behaves identically, but
has an extra "flags" argument.
At the end of this patch series, it's still not possible to call
virNetworkDefineXMLFlags() with anything other than 0 in flags, butt
this gets the API in place, and in use by virsh (although with no
extra functionality).
A later patchset will add a VIR_NETWORK_DEFINE_AFFECT_LIVE flag and
the network driver support behind it.
(It almost seems like overkill to split this into so many teeny tiny
patches, but this is the currently popular/accepted format for API
addition patches.)