This series implements the driver XML parsing callbacks as
Dan suggested.
This series may appear to be monstrous but I chose to split some patches
to separate ones although the code does not compile afterwards to ease review.
The patches starting with the word "fix" will need to be squashed into the
non "fix" patches predceeding them.
The last patch demonstrates the use of this code to get rid of the rest
of the irrelevant fields in virCaps. I didn't go further with those
to save time if there's a design flaw in the callback stuff.
Peter Krempa (21):
virCaps: conf: start splitting out irrelevat data
fix fallout in src/conf/
fix fallout in src/esx
fix fallout in src/lxc
fix fallout in src/openvz
fix fallout in src/parallels
fix fallout in phyp driver
fix fallout in src/qemu/
fix fallout in tests/
fix fallout in src/xen
fix fallout in src/vmware
fix fallout in src/uml
fix fallout in test driver
fix fallout in vbox driver
conf: Add separate defaults addition and validation for XML parsing
fix fallout from adding new parameter to internal APIs
conf: Add argument to support use of the driver adjust callbacks
qemu: Implement the device parse callback and use it for interfaces
fix fallout of the change of the network device default
conf: Move validation of domain title
virCaps: get rid of "defaultInitPath" value in the virCaps struct
src/Makefile.am | 2 +
src/conf/capabilities.h | 9 +-
src/conf/domain_conf.c | 322 +++++++++++++++++----
src/conf/domain_conf.h | 64 +++-
src/conf/snapshot_conf.c | 3 +-
src/conf/snapshot_conf.h | 1 +
src/esx/esx_driver.c | 14 +-
src/esx/esx_private.h | 2 +
src/libvirt_private.syms | 2 +
src/lxc/lxc_conf.c | 8 +
src/lxc/lxc_conf.h | 2 +
src/lxc/lxc_controller.c | 7 +-
src/lxc/lxc_domain.c | 13 +-
src/lxc/lxc_domain.h | 2 +-
src/lxc/lxc_driver.c | 49 ++--
src/lxc/lxc_process.c | 9 +-
src/openvz/openvz_conf.c | 33 ++-
src/openvz/openvz_conf.h | 3 +
src/openvz/openvz_driver.c | 20 +-
src/parallels/parallels_driver.c | 12 +-
src/parallels/parallels_utils.h | 1 +
src/phyp/phyp_driver.c | 8 +-
src/qemu/qemu_command.c | 9 +-
src/qemu/qemu_command.h | 3 +
src/qemu/qemu_conf.c | 11 +-
src/qemu/qemu_conf.h | 4 +
src/qemu/qemu_domain.c | 77 +++--
src/qemu/qemu_domain.h | 7 +-
src/qemu/qemu_driver.c | 134 ++++-----
src/qemu/qemu_migration.c | 22 +-
src/qemu/qemu_process.c | 109 ++-----
src/test/test_driver.c | 61 ++--
src/uml/uml_conf.h | 1 +
src/uml/uml_driver.c | 35 ++-
src/vbox/vbox_tmpl.c | 27 +-
src/vmware/vmware_conf.c | 3 +-
src/vmware/vmware_conf.h | 1 +
src/vmware/vmware_driver.c | 25 +-
src/xen/xen_driver.c | 8 +-
src/xen/xen_driver.h | 1 +
src/xen/xend_internal.c | 14 +-
src/xen/xm_internal.c | 4 +-
tests/domainsnapshotxml2xmltest.c | 5 +
tests/lxcxml2xmltest.c | 7 +-
tests/qemuargv2xmltest.c | 8 +-
tests/qemumonitorjsontest.c | 29 +-
tests/qemumonitortestutils.c | 4 +-
tests/qemumonitortestutils.h | 5 +-
.../qemuxml2argv-net-bandwidth.xml | 1 +
.../qemuxml2argvdata/qemuxml2argv-net-client.args | 6 +-
.../qemuxml2argv-net-eth-ifname.args | 6 +-
.../qemuxml2argv-net-eth-ifname.xml | 1 +
.../qemuxml2argv-net-eth-names.args | 8 +-
tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 6 +-
tests/qemuxml2argvdata/qemuxml2argv-net-eth.xml | 1 +
.../qemuxml2argvdata/qemuxml2argv-net-hostdev.xml | 1 +
tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 6 +-
.../qemuxml2argv-net-openvswitch.xml | 1 +
.../qemuxml2argvdata/qemuxml2argv-net-server.args | 6 +-
tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 5 +-
tests/qemuxml2argvdata/qemuxml2argv-net-user.xml | 1 +
.../qemuxml2argv-net-virtio-network-portgroup.xml | 2 +
tests/qemuxml2argvtest.c | 5 +-
.../qemuxml2xmlout-graphics-spice-timeout.xml | 1 +
tests/qemuxml2xmltest.c | 6 +-
tests/qemuxmlnstest.c | 5 +-
tests/testutilslxc.c | 7 +
tests/testutilslxc.h | 2 +
tests/testutilsqemu.c | 3 +-
tests/testutilsqemu.h | 2 +
tests/testutilsxen.c | 6 +
tests/testutilsxen.h | 2 +
tests/xmconfigtest.c | 8 +-
tests/xml2sexprtest.c | 8 +-
tests/xml2vmxtest.c | 8 +-
75 files changed, 848 insertions(+), 466 deletions(-)
--
1.8.1.1