Hey, Looks good to me, one addition below: On Thu, Jun 05, 2014 at 08:42:24AM +0200, Cédric Bosdonnat wrote: > diff --git a/libvirt-gconfig/libvirt-gconfig-capabilities-host.c b/libvirt-gconfig/libvirt-gconfig-capabilities-host.c > index 6a15206..46d2bc1 100644 > --- a/libvirt-gconfig/libvirt-gconfig-capabilities-host.c > +++ b/libvirt-gconfig/libvirt-gconfig-capabilities-host.c > @@ -77,3 +77,54 @@ gvir_config_capabilities_host_get_cpu(GVirConfigCapabilitiesHost *host) > > return GVIR_CONFIG_CAPABILITIES_CPU(object); > } > + > +struct GetSecModelData { > + GVirConfigXmlDoc *doc; > + const gchar *schema; > + GList *secmodels; > + GType type; > +}; > + > +static gboolean add_secmodel(xmlNodePtr node, gpointer opaque) > +{ > + struct GetSecModelData* data = (struct GetSecModelData*)opaque; > + GVirConfigObject *secmodel; > + > + if (g_strcmp0((const gchar *)node->name, "secmodel") != 0) > + return TRUE; > + > + secmodel = gvir_config_object_new_from_tree > + (data->type, > + data->doc, > + data->schema, > + node); > + if (secmodel != NULL) > + data->secmodels = g_list_append(data->secmodels, secmodel); > + else > + g_debug("Failed to parse %s node", node->name); > + > + return TRUE; > +} > + For good introspection, you will need something like this here: diff --git a/libvirt-gconfig/libvirt-gconfig-capabilities-host.c b/libvirt-gconfig/libvirt-gconfig-capabilities-host.c index 07719d0..a5d58e8 100644 --- a/libvirt-gconfig/libvirt-gconfig-capabilities-host.c +++ b/libvirt-gconfig/libvirt-gconfig-capabilities-host.c @@ -106,6 +106,15 @@ static gboolean add_secmodel(xmlNodePtr node, gpointer opaque) return TRUE; } +/** + * gvir_config_capabilities_host_get_secmodels: + * @host: a #GVirConfigCapabilitiesHost + * + * Get the security models listed in @host capabilities. + * + * Returns: (element-type LibvirtGConfig.CapabilitiesHostSecModel) (transfer full): + * a newly allocated #GList of #GVirConfigCapabilitiesHostSecModel. + */ GList * gvir_config_capabilities_host_get_secmodels(GVirConfigCapabilitiesHost *host) { ACK with this (or a variant of this if you want to improve the documentation text) squashed in. Christophe
Attachment:
pgpV3DkHwZWi7.pgp
Description: PGP signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list