On Mon, Nov 21, 2011 at 07:04:04PM +0100, Christophe Fergeau wrote:
--
v2: use g_return_if_fail to test function args for sanity
---
libvirt-gconfig/libvirt-gconfig-clock.c | 38 +++++++++++++++++++++++++++++++
libvirt-gconfig/libvirt-gconfig-clock.h | 5 ++++
libvirt-gconfig/libvirt-gconfig.sym | 2 +
3 files changed, 45 insertions(+), 0 deletions(-)
diff --git a/libvirt-gconfig/libvirt-gconfig-clock.c
b/libvirt-gconfig/libvirt-gconfig-clock.c
index 1f28efb..25f6159 100644
--- a/libvirt-gconfig/libvirt-gconfig-clock.c
+++ b/libvirt-gconfig/libvirt-gconfig-clock.c
@@ -27,6 +27,7 @@
#include <libxml/tree.h>
#include "libvirt-gconfig/libvirt-gconfig.h"
+#include "libvirt-gconfig/libvirt-gconfig-object-private.h"
extern gboolean debugFlag;
@@ -79,3 +80,40 @@ GVirConfigClock *gvir_config_clock_new_from_xml(const gchar *xml,
"clock", NULL, xml, error);
return GVIR_CONFIG_CLOCK(object);
}
+
+void gvir_config_clock_set_timezone(GVirConfigClock *klock,
+ const char *tz)
+{
+ xmlNodePtr node;
+ xmlChar *encoded_tz;
+
+ g_return_if_fail(GVIR_IS_CONFIG_CLOCK(klock));
+ g_return_if_fail(tz != NULL);
+
+ node = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(klock));
+ if (node == NULL)
+ return;
+
+ xmlNewProp(node, (xmlChar*)"offset", (xmlChar*)"timezone");
+ encoded_tz = xmlEncodeEntitiesReentrant(node->doc, (xmlChar*)tz);
+ xmlNewProp(node, (xmlChar*)"timezone", encoded_tz);
+ xmlFree(encoded_tz);
+}
+
+void gvir_config_clock_set_variable_offset(GVirConfigClock *klock,
+ gint seconds)
+{
+ xmlNodePtr node;
+ char *offset_str;
+
+ g_return_if_fail(GVIR_IS_CONFIG_CLOCK(klock));
+
+ node = gvir_config_object_replace_child(GVIR_CONFIG_OBJECT(klock),
"clock");
+ if (node == NULL)
+ return;
+
+ xmlNewProp(node, (xmlChar*)"offset", (xmlChar*)"variable");
+ offset_str = g_strdup_printf("%d", seconds);
+ xmlNewProp(node, (xmlChar*)"timezone", (xmlChar*)offset_str);
+ g_free(offset_str);
Copy+paste buglet - s/timezone/adjustment/
ACK with that fix commit.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|