[Libvirt-cim] [PATCH 1 of 3] Add support for parsing and generating XML for the NIC model type tag

Kaitlin Rupert kaitlin at linux.vnet.ibm.com
Mon Apr 20 18:14:37 UTC 2009


# HG changeset patch
# User Kaitlin Rupert <karupert at us.ibm.com>
# Date 1240250416 25200
# Node ID bca16d22da253f390a74fb08d4f61f7419308dba
# Parent  146ed7d63fbbc2edc78660ddc6ecc393ee61739c
Add support for parsing and generating XML for the NIC model type tag

Signed-off-by: Kaitlin Rupert <karupert at us.ibm.com>

diff -r 146ed7d63fbb -r bca16d22da25 libxkutil/device_parsing.c
--- a/libxkutil/device_parsing.c	Thu Apr 16 11:20:21 2009 -0700
+++ b/libxkutil/device_parsing.c	Mon Apr 20 11:00:16 2009 -0700
@@ -66,6 +66,7 @@
         free(dev->type);
         free(dev->mac);
         free(dev->source);
+        free(dev->model);
 }
 
 static void cleanup_emu_device(struct emu_device *dev)
@@ -311,6 +312,10 @@
                         if (ndev->source != NULL)
                                 continue;
                         goto err;
+                } else if (XSTREQ(child->name, "model")) {
+                        ndev->model = get_attr_value(child, "type");
+                        if (ndev->model == NULL)
+                                goto err;
                 }
         }
 
diff -r 146ed7d63fbb -r bca16d22da25 libxkutil/device_parsing.h
--- a/libxkutil/device_parsing.h	Thu Apr 16 11:20:21 2009 -0700
+++ b/libxkutil/device_parsing.h	Mon Apr 20 11:00:16 2009 -0700
@@ -45,6 +45,7 @@
         char *type;
         char *mac;
         char *source;
+        char *model;
 };
 
 struct mem_device {
diff -r 146ed7d63fbb -r bca16d22da25 libxkutil/xmlgen.c
--- a/libxkutil/xmlgen.c	Thu Apr 16 11:20:21 2009 -0700
+++ b/libxkutil/xmlgen.c	Mon Apr 20 11:00:16 2009 -0700
@@ -210,6 +210,13 @@
                         return XML_ERROR;
                 xmlNewProp(tmp, BAD_CAST "address", BAD_CAST net->mac);
 
+                if (net->model != NULL) {
+                        tmp = xmlNewChild(nic, NULL, BAD_CAST "model", NULL);
+                        if (tmp == NULL)
+                                return XML_ERROR;
+                        xmlNewProp(tmp, BAD_CAST "type", BAD_CAST net->model);
+                }
+
                 if (STREQ(dev->dev.net.type, "network"))
                         msg = set_net_source(nic, net, "network");
                 else if (STREQ(dev->dev.net.type, "bridge"))




More information about the Libvirt-cim mailing list