On Tue, 2010-05-25 at 15:26 +0100, Daniel P. Berrange wrote: > > > > virBufferAddLit(&xml, "<capabilities>\n\n"); > > virBufferAddLit(&xml, " <host>\n"); > > + virBufferVSprintf(&xml," <uuid>%s</uuid>\n", host_uuid); > > virBufferAddLit(&xml, " <cpu>\n"); > > virBufferVSprintf(&xml, " <arch>%s</arch>\n", > > caps->host.arch); > > Index: libvirt-acl/docs/schemas/capability.rng > > =================================================================== > > --- libvirt-acl.orig/docs/schemas/capability.rng > > +++ libvirt-acl/docs/schemas/capability.rng > > @@ -18,6 +18,9 @@ > > > > <define name='hostcaps'> > > <element name='host'> > > + <element name='uuid'> > > + <ref name='UUID'/> > > + </element> > > I've wrapped this in <optional> OK, yes, this was too strict for the other platforms. > > > Index: libvirt-acl/src/qemu/qemu_driver.c > > =================================================================== > > --- libvirt-acl.orig/src/qemu/qemu_driver.c > > +++ libvirt-acl/src/qemu/qemu_driver.c > > @@ -1334,6 +1334,11 @@ qemuCreateCapabilities(virCapsPtr oldcap > > caps->privateDataXMLFormat = qemuDomainObjPrivateXMLFormat; > > caps->privateDataXMLParse = qemuDomainObjPrivateXMLParse; > > > > + if (virGetHostUUID(caps->host.host_uuid)) { > > + qemuReportError(VIR_ERR_INTERNAL_ERROR, > > + "%s", _("cannot get the host uuid")); > > + goto err_exit; > > + } > > > > /* Security driver data */ > > if (driver->securityPrimaryDriver) { > > I've added this same code to the UML and LXC drivers. > > We'll need a different solution for things like VMWare/VirtualBox/Phyp/etc, > so for now they don't get any host UUID in XML. > > I don't think my new patch should cause any merge problems with > the VEPA patches, since my changes touched different code. > I tried it and there are no problems. > Daniel > > [...] > # > # By default, no Username's are checked > sasl_allowed_username_list = [ "joe@xxxxxxxxxxx", "fred@xxxxxxxxxxx" ] > +# UUID of the host: > +# Provide the UUID of the host here in case the command > +# 'dmidecode -s system-uuid' does not provide a valid uuid. In case > +# 'dmidecode' does not provide a valid UUID and none is provided here, a > +# temporary UUID will be generated. > +# Keep the format of the example UUID below. > +host_uuid = "8510b1a1-1afa-4da6-8111-785fae202c1e" > > ACK - I couldn't have done it better :-) Stefan -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list