On Fri, Feb 22, 2008 at 10:47:44AM +0000, Mark McLoughlin wrote:
On Fri, 2008-02-22 at 05:16 -0500, Daniel Veillard wrote:
> I also agree to some extend with Mark, the on disk
> storage should probably go in the network description. But that's
> orthogonal to the API side :)
Heh, no it's not orthogonal ... XML *is* the API for this kind of stuff
across libvirt :-)
Sort of. XML is used as a way to avoid making any ABI guarantees.
I had a look at the implementation of the network XML. There are
three calls which matter:
virNetworkDefineXML
Define the network from the XML definition, but don't start it up.
Saves the XML into a private directory so that it will be loaded
when libvirtd restarts (and depending on the autostart setting may
also be started up automatically).
The current implementation always completely recreates the
internal network definitions from scratch.
virNetworkCreateXML
Start up the network from the XML definition.
As far as I can see, this doesn't persist the XML so the network
will disappear after libvirtd is restarted.
The current implementation always completely recreates the
internal network definitions from scratch.
virNetworkUndefine
Stops the network.
Deletes the config file and autostart setting from the private
directory.
The first two calls need to be changed to look for incremental changes
in the XML, since its better to avoid fully restarting dnsmasq, and we
certainly don't want to try taking down the bridge.
Rich.
--
Emerging Technologies, Red Hat -
http://et.redhat.com/~rjones/
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
Street, Windsor, Berkshire, SL4 1TE, United Kingdom. Registered in
England and Wales under Company Registration No. 03798903