---
.../libvirt-gconfig-domain-controller.c | 29 ++++++++++++++++++++
.../libvirt-gconfig-domain-controller.h | 4 +++
libvirt-gconfig/libvirt-gconfig.sym | 2 ++
3 files changed, 35 insertions(+)
diff --git a/libvirt-gconfig/libvirt-gconfig-domain-controller.c
b/libvirt-gconfig/libvirt-gconfig-domain-controller.c
index 3aea5ba..d8d9ffb 100644
--- a/libvirt-gconfig/libvirt-gconfig-domain-controller.c
+++ b/libvirt-gconfig/libvirt-gconfig-domain-controller.c
@@ -48,3 +48,32 @@ static void
gvir_config_domain_controller_init(GVirConfigDomainController *contr
controller->priv = GVIR_CONFIG_DOMAIN_CONTROLLER_GET_PRIVATE(controller);
}
+
+void gvir_config_domain_controller_set_index(GVirConfigDomainController *controller,
+ guint index)
+{
+ g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_CONTROLLER(controller));
+
+ gvir_config_object_set_attribute_with_type(GVIR_CONFIG_OBJECT(controller),
+ "index", G_TYPE_UINT,
+ index, NULL);
+}
+
+guint gvir_config_domain_controller_get_index(GVirConfigDomainController *controller)
+{
+ const char *index_str;
+ char *end;
+ guint index;
+
+ g_return_val_if_fail(GVIR_CONFIG_IS_DOMAIN_CONTROLLER(controller), 0);
+
+ index_str = gvir_config_object_get_attribute(GVIR_CONFIG_OBJECT(controller),
+ NULL, "index");
+ if (index_str == 0)
+ return 0;
+
+ index = strtoul(index_str, &end, 0);
+ g_return_val_if_fail(*end == '\0', 0);
+
+ return index;
+}
diff --git a/libvirt-gconfig/libvirt-gconfig-domain-controller.h
b/libvirt-gconfig/libvirt-gconfig-domain-controller.h
index 41847c3..7cdabe2 100644
--- a/libvirt-gconfig/libvirt-gconfig-domain-controller.h
+++ b/libvirt-gconfig/libvirt-gconfig-domain-controller.h
@@ -58,6 +58,10 @@ struct _GVirConfigDomainControllerClass
GType gvir_config_domain_controller_get_type(void);
+void gvir_config_domain_controller_set_index(GVirConfigDomainController *controller,
+ guint index);
+guint gvir_config_domain_controller_get_index(GVirConfigDomainController *controller);
+
G_END_DECLS
#endif /* __LIBVIRT_GCONFIG_DOMAIN_CONTROLLER_H__ */
diff --git a/libvirt-gconfig/libvirt-gconfig.sym b/libvirt-gconfig/libvirt-gconfig.sym
index 7b590ff..a7d2c19 100644
--- a/libvirt-gconfig/libvirt-gconfig.sym
+++ b/libvirt-gconfig/libvirt-gconfig.sym
@@ -70,6 +70,8 @@ LIBVIRT_GCONFIG_0.0.4 {
gvir_config_domain_console_target_type_get_type;
gvir_config_domain_controller_get_type;
+ gvir_config_domain_controller_get_index;
+ gvir_config_domain_controller_set_index;
gvir_config_domain_device_get_type;
--
1.7.9.3