/** * gvir_config_capabilities_guest_arch_get_domains: * * Gets the possible domains for this architecture. * * Returns: (element-type LibvirtGConfig.CapabilitiesGuestDomain) (transfer full): * a newly allocated #GList of #GVirConfigCapabilitiesGuestDomain. */ GList * gvir_config_capabilities_guest_arch_get_domains(GVirConfigCapabilitiesGuestArch *arch) { struct GetDomainData data; g_return_val_if_fail(GVIR_CONFIG_IS_CAPABILITIES_GUEST_ARCH(arch), NULL); g_object_get(G_OBJECT(arch), "doc", &data.doc, NULL); g_return_val_if_fail(data.doc != NULL, NULL); data.schema = gvir_config_object_get_schema(GVIR_CONFIG_OBJECT(arch)); data.domains = NULL; gvir_config_object_foreach_child(GVIR_CONFIG_OBJECT(arch), NULL, add_domain, &data); g_clear_object(&data.doc); return data.domains; }
/** * gvir_config_capabilities_get_guests: * * Gets the list of guest capabilities. * * Returns: (element-type LibvirtGConfig.CapabilitiesGuest) (transfer full): * a newly allocated #GList of #GVirConfigCapabilitiesGuest. */ GList * gvir_config_capabilities_get_guests(GVirConfigCapabilities *caps) { struct GetGuestData data; g_return_val_if_fail(GVIR_CONFIG_IS_CAPABILITIES(caps), NULL); g_object_get(G_OBJECT(caps), "doc", &data.doc, NULL); data.schema = gvir_config_object_get_schema(GVIR_CONFIG_OBJECT(caps)); data.guests = NULL; gvir_config_object_foreach_child(GVIR_CONFIG_OBJECT(caps), NULL, add_guest, &data); g_clear_object(&data.doc); return data.guests; }
/** * gvir_config_capabilities_guest_get_features: * * Gets the CPU features for this guest. * * Returns: (element-type LibvirtGConfig.CapabilitiesGuestFeature) (transfer full): * a newly allocated #GList of #GVirConfigCapabilitiesGuestFeature. */ GList * gvir_config_capabilities_guest_get_features(GVirConfigCapabilitiesGuest *guest) { struct GetFeatureData data; g_return_val_if_fail(GVIR_CONFIG_IS_CAPABILITIES_GUEST(guest), NULL); g_object_get(G_OBJECT(guest), "doc", &data.doc, NULL); g_return_val_if_fail(data.doc != NULL, NULL); data.schema = gvir_config_object_get_schema(GVIR_CONFIG_OBJECT(guest)); data.features = NULL; gvir_config_object_foreach_child(GVIR_CONFIG_OBJECT(guest), "features", add_feature, &data); g_clear_object(&data.doc); return data.features; }
/** * 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) { struct GetSecModelData data; g_return_val_if_fail(GVIR_CONFIG_IS_CAPABILITIES_HOST(host), NULL); data.schema = gvir_config_object_get_schema(GVIR_CONFIG_OBJECT(host)); g_object_get(G_OBJECT(host), "doc", &data.doc, NULL); g_return_val_if_fail(data.doc != NULL, NULL); data.secmodels = NULL; data.type = GVIR_CONFIG_TYPE_CAPABILITIES_HOST_SECMODEL; gvir_config_object_foreach_child(GVIR_CONFIG_OBJECT(host), NULL, add_secmodel, &data); g_clear_object(&data.doc); return data.secmodels; }