[Libvir] Can't connect to lxc driver
by Dave Leskovec
Hi Dan,
I updated today to the latest CVS and can no longer connect to the lxc driver.
I've tracked it down to this check in doRemoteOpen() in remote_internal.c:
if ((
#ifdef HAVE_XMLURI_QUERY_RAW
uri->query_raw =
#else
uri->query =
#endif
qparam_get_query (vars)) == NULL) goto failed;
Looking at the recent VirBuffer changes, it looks like they changed the behavior
of qparam_get_query. With the old VirBuffer, qparam_get_query returned a
non-NULL result because virBufferNew allocated space. The new VirBuffer doesn't
allocate space until something is added and hence this function returns NULL if
nothing is ever put in the buffer. I'm not familiar enough with the intended
behavior to know what the fix should be here.
Thanks!
--
Best Regards,
Dave Leskovec
IBM Linux Technology Center
Open Virtualization
16 years, 6 months
[Libvir] build problems on RHEL5, at least some are now fixed
by Jim Meyering
Daniel Berrange noticed some build problems on RHEL5.
Some were due to my not adding two .m4 files in yesterday's
gnulib update. [excuse time ;-) Normally (in other projects),
the gnulib-update process is automatic, since the imported files
are not version-controlled, but for libvirt I have to identify
new files pulled in by a gnulib update, and obviously didn't
complete that step.
Identifying and adding added files is not hard. Just have to remember
to do it before committing anything. Actually, the trick is (as usual)
to *automate* the process, so we don't have to depend on my memory.
This is now on my list.
Anyhow, I've committed the change.
16 years, 6 months
[Libvir] PATCH: Support network interface model in Xen and QEMU driver
by Daniel P. Berrange
This patch finishes off the work from Rich / Soren to support network
interface model in both Xen and QEMU drivers, and adds test cases for
the new syntax
src/qemu_conf.c | 57 ++++++++++++++++++--
src/qemu_conf.h | 2
src/xend_internal.c | 7 ++
src/xm_internal.c | 22 +++++++
src/xml.c | 8 ++
tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args | 1
tests/qemuxml2argvdata/qemuxml2argv-net-virtio.xml | 26 +++++++++
tests/qemuxml2argvtest.c | 1
tests/qemuxml2xmltest.c | 1
tests/sexpr2xmldata/sexpr2xml-net-e1000.sexpr | 2
tests/sexpr2xmldata/sexpr2xml-net-e1000.xml | 32 +++++++++++
tests/sexpr2xmltest.c | 1
tests/testutils.c | 31 ++++++----
tests/xmconfigdata/test-paravirt-net-e1000.cfg | 12 ++++
tests/xmconfigdata/test-paravirt-net-e1000.xml | 28 +++++++++
tests/xmconfigtest.c | 1
tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr | 1
tests/xml2sexprdata/xml2sexpr-net-e1000.xml | 30 ++++++++++
tests/xml2sexprtest.c | 1
19 files changed, 247 insertions(+), 17 deletions(-)
Dan.
Index: src/qemu_conf.c
===================================================================
RCS file: /data/cvs/libvirt/src/qemu_conf.c,v
retrieving revision 1.50
diff -u -p -r1.50 qemu_conf.c
--- src/qemu_conf.c 28 Apr 2008 15:14:59 -0000 1.50
+++ src/qemu_conf.c 29 Apr 2008 17:15:31 -0000
@@ -718,6 +718,7 @@ static int qemudParseInterfaceXML(virCon
xmlChar *script = NULL;
xmlChar *address = NULL;
xmlChar *port = NULL;
+ xmlChar *model = NULL;
net->type = QEMUD_NET_USER;
@@ -779,6 +780,8 @@ static int qemudParseInterfaceXML(virCon
(net->type == QEMUD_NET_ETHERNET) &&
xmlStrEqual(cur->name, BAD_CAST "script")) {
script = xmlGetProp(cur, BAD_CAST "path");
+ } else if (xmlStrEqual (cur->name, BAD_CAST "model")) {
+ model = xmlGetProp (cur, BAD_CAST "type");
}
}
cur = cur->next;
@@ -938,6 +941,39 @@ static int qemudParseInterfaceXML(virCon
xmlFree(address);
}
+ /* NIC model (see -net nic,model=?). We only check that it looks
+ * reasonable, not that it is a supported NIC type. FWIW kvm
+ * supports these types as of April 2008:
+ * i82551 i82557b i82559er ne2k_pci pcnet rtl8139 e1000 virtio
+ */
+ if (model != NULL) {
+ int i, len, char_ok;
+
+ len = xmlStrlen (model);
+ if (len >= QEMUD_MODEL_MAX_LEN) {
+ qemudReportError (conn, NULL, NULL, VIR_ERR_INVALID_ARG,
+ _("Model name '%s' is too long"), model);
+ goto error;
+ }
+ for (i = 0; i < len; ++i) {
+ char_ok =
+ (model[i] >= '0' && model[i] <= '9') ||
+ (model[i] >= 'a' && model[i] <= 'z') ||
+ (model[i] >= 'A' && model[i] <= 'Z') || model[i] == '_';
+ if (!char_ok) {
+ qemudReportError (conn, NULL, NULL, VIR_ERR_INVALID_ARG,
+ _("Model name contains invalid characters"));
+ goto error;
+ }
+ }
+ strncpy (net->model, (const char*) model, len);
+ net->model[len] = '\0';
+
+ xmlFree (model);
+ model = NULL;
+ } else
+ net->model[0] = '\0';
+
return 0;
error:
@@ -953,6 +989,8 @@ static int qemudParseInterfaceXML(virCon
xmlFree(script);
if (bridge)
xmlFree(bridge);
+ if (model)
+ xmlFree(model);
return -1;
}
@@ -2283,13 +2321,22 @@ int qemudBuildCommandLine(virConnectPtr
} else {
int vlan = 0;
while (net) {
+ char model[100];
char nic[100];
- if (snprintf(nic, sizeof(nic), "nic,macaddr=%02x:%02x:%02x:%02x:%02x:%02x,vlan=%d",
+ if (net->model[0] != '\0') {
+ if (snprintf (model, sizeof (model), ",model=%s", net->model)
+ >= sizeof (model))
+ goto error;
+ } else
+ model[0] = '\0';
+
+ if (snprintf(nic, sizeof(nic),
+ "nic,macaddr=%02x:%02x:%02x:%02x:%02x:%02x,vlan=%d%s",
net->mac[0], net->mac[1],
net->mac[2], net->mac[3],
net->mac[4], net->mac[5],
- vlan) >= sizeof(nic))
+ vlan, model) >= sizeof(nic))
goto error;
if (!((*argv)[++n] = strdup("-net")))
@@ -3411,7 +3458,6 @@ static int qemudGenerateXMLChar(virBuffe
virBufferVSprintf(buf, " <source mode='connect' service='%s'/>\n",
dev->srcData.udp.connectService);
}
-
break;
case QEMUD_CHR_SRC_TYPE_TCP:
@@ -3625,6 +3671,11 @@ char *qemudGenerateXML(virConnectPtr con
net->dst.socket.port);
}
+ if (net->model && net->model[0] != '\0') {
+ virBufferVSprintf(&buf, " <model type='%s'/>\n",
+ net->model);
+ }
+
virBufferAddLit(&buf, " </interface>\n");
net = net->next;
Index: src/qemu_conf.h
===================================================================
RCS file: /data/cvs/libvirt/src/qemu_conf.h,v
retrieving revision 1.23
diff -u -p -r1.23 qemu_conf.h
--- src/qemu_conf.h 25 Apr 2008 20:46:13 -0000 1.23
+++ src/qemu_conf.h 29 Apr 2008 17:15:32 -0000
@@ -68,6 +68,7 @@ struct qemud_vm_disk_def {
};
#define QEMUD_MAC_ADDRESS_LEN 6
+#define QEMUD_MODEL_MAX_LEN 10
#define QEMUD_OS_TYPE_MAX_LEN 10
#define QEMUD_OS_ARCH_MAX_LEN 10
#define QEMUD_OS_MACHINE_MAX_LEN 10
@@ -97,6 +98,7 @@ enum qemud_vm_net_forward_type {
struct qemud_vm_net_def {
int type;
unsigned char mac[QEMUD_MAC_ADDRESS_LEN];
+ char model[QEMUD_MODEL_MAX_LEN];
union {
struct {
char ifname[BR_IFNAME_MAXLEN];
Index: src/xend_internal.c
===================================================================
RCS file: /data/cvs/libvirt/src/xend_internal.c,v
retrieving revision 1.182
diff -u -p -r1.182 xend_internal.c
--- src/xend_internal.c 28 Apr 2008 15:14:59 -0000 1.182
+++ src/xend_internal.c 29 Apr 2008 17:15:34 -0000
@@ -1893,9 +1893,10 @@ xend_parse_sexp_desc(virConnectPtr conn,
free(drvName);
free(drvType);
} else if (sexpr_lookup(node, "device/vif")) {
- const char *tmp2;
+ const char *tmp2, *model;
tmp2 = sexpr_node(node, "device/vif/script");
tmp = sexpr_node(node, "device/vif/bridge");
+ model = sexpr_node(node, "device/vif/model");
if ((tmp2 && strstr(tmp2, "bridge")) || tmp) {
virBufferAddLit(&buf, " <interface type='bridge'>\n");
if (tmp != NULL)
@@ -1924,6 +1925,10 @@ xend_parse_sexp_desc(virConnectPtr conn,
virBufferVSprintf(&buf, " <script path='%s'/>\n",
tmp2);
+ if (model)
+ virBufferVSprintf(&buf, " <model type='%s'/>\n",
+ model);
+
virBufferAddLit(&buf, " </interface>\n");
vif_index++;
} else if (sexpr_lookup(node, "device/vfb")) {
Index: src/xm_internal.c
===================================================================
RCS file: /data/cvs/libvirt/src/xm_internal.c,v
retrieving revision 1.72
diff -u -p -r1.72 xm_internal.c
--- src/xm_internal.c 28 Apr 2008 15:14:59 -0000 1.72
+++ src/xm_internal.c 29 Apr 2008 17:15:37 -0000
@@ -845,6 +845,7 @@ char *xenXMDomainFormatXML(virConnectPtr
while (list) {
int type = -1;
char script[PATH_MAX];
+ char model[10];
char ip[16];
char mac[18];
char bridge[50];
@@ -854,6 +855,7 @@ char *xenXMDomainFormatXML(virConnectPtr
mac[0] = '\0';
script[0] = '\0';
ip[0] = '\0';
+ model[0] = '\0';
if ((list->type != VIR_CONF_STRING) || (list->str == NULL))
goto skipnic;
@@ -886,6 +888,12 @@ char *xenXMDomainFormatXML(virConnectPtr
len = PATH_MAX-1;
strncpy(script, data, len);
script[len] = '\0';
+ } else if (!strncmp(key, "model=", 6)) {
+ int len = nextkey ? (nextkey - data) : sizeof(model)-1;
+ if (len > (sizeof(model)-1))
+ len = sizeof(model)-1;
+ strncpy(model, data, len);
+ model[len] = '\0';
} else if (!strncmp(key, "ip=", 3)) {
int len = nextkey ? (nextkey - data) : 15;
if (len > 15)
@@ -915,6 +923,8 @@ char *xenXMDomainFormatXML(virConnectPtr
virBufferVSprintf(&buf, " <script path='%s'/>\n", script);
if (ip[0])
virBufferVSprintf(&buf, " <ip address='%s'/>\n", ip);
+ if (model[0])
+ virBufferVSprintf(&buf, " <model type='%s'/>\n", model);
virBufferAddLit(&buf, " </interface>\n");
skipnic:
@@ -1777,6 +1787,7 @@ static char *xenXMParseXMLVif(virConnect
xmlChar *source = NULL;
xmlChar *mac = NULL;
xmlChar *script = NULL;
+ xmlChar *model = NULL;
xmlChar *ip = NULL;
int typ = 0;
char *buf = NULL;
@@ -1808,6 +1819,9 @@ static char *xenXMParseXMLVif(virConnect
} else if ((mac == NULL) &&
(xmlStrEqual(cur->name, BAD_CAST "mac"))) {
mac = xmlGetProp(cur, BAD_CAST "address");
+ } else if ((model == NULL) &&
+ (xmlStrEqual(cur->name, BAD_CAST "model"))) {
+ model = xmlGetProp(cur, BAD_CAST "type");
} else if ((ip == NULL) &&
(xmlStrEqual(cur->name, BAD_CAST "ip"))) {
ip = xmlGetProp(cur, BAD_CAST "address");
@@ -1843,6 +1857,8 @@ static char *xenXMParseXMLVif(virConnect
buflen += 11;
if (script)
buflen += 8 + strlen((const char*)script);
+ if (model)
+ buflen += 7 + strlen((const char*)model);
if (ip)
buflen += 4 + strlen((const char*)ip);
@@ -1870,6 +1886,10 @@ static char *xenXMParseXMLVif(virConnect
strcat(buf, ",script=");
strcat(buf, (const char*)script);
}
+ if (model) {
+ strcat(buf, ",model=");
+ strcat(buf, (const char*)model);
+ }
if (ip) {
strcat(buf, ",ip=");
strcat(buf, (const char*)ip);
@@ -1883,6 +1903,8 @@ static char *xenXMParseXMLVif(virConnect
xmlFree(source);
if (script != NULL)
xmlFree(script);
+ if (model != NULL)
+ xmlFree(model);
if (ip != NULL)
xmlFree(ip);
Index: src/xml.c
===================================================================
RCS file: /data/cvs/libvirt/src/xml.c,v
retrieving revision 1.119
diff -u -p -r1.119 xml.c
--- src/xml.c 28 Apr 2008 15:14:59 -0000 1.119
+++ src/xml.c 29 Apr 2008 17:15:38 -0000
@@ -1378,6 +1378,7 @@ virDomainParseXMLIfDesc(virConnectPtr co
xmlChar *source = NULL;
xmlChar *mac = NULL;
xmlChar *script = NULL;
+ xmlChar *model = NULL;
xmlChar *ip = NULL;
int typ = 0;
int ret = -1;
@@ -1409,6 +1410,9 @@ virDomainParseXMLIfDesc(virConnectPtr co
} else if ((script == NULL) &&
(xmlStrEqual(cur->name, BAD_CAST "script"))) {
script = xmlGetProp(cur, BAD_CAST "path");
+ } else if ((model == NULL) &&
+ (xmlStrEqual(cur->name, BAD_CAST "model"))) {
+ model = xmlGetProp(cur, BAD_CAST "type");
} else if ((ip == NULL) &&
(xmlStrEqual(cur->name, BAD_CAST "ip"))) {
/* XXX in future expect to need to have > 1 ip
@@ -1454,6 +1458,8 @@ virDomainParseXMLIfDesc(virConnectPtr co
}
if (script != NULL)
virBufferVSprintf(buf, "(script '%s')", script);
+ if (model != NULL)
+ virBufferVSprintf(buf, "(model '%s')", model);
if (ip != NULL)
virBufferVSprintf(buf, "(ip '%s')", ip);
/*
@@ -1474,6 +1480,8 @@ virDomainParseXMLIfDesc(virConnectPtr co
xmlFree(script);
if (ip != NULL)
xmlFree(ip);
+ if (model != NULL)
+ xmlFree(model);
return (ret);
}
Index: tests/qemuxml2argvtest.c
===================================================================
RCS file: /data/cvs/libvirt/tests/qemuxml2argvtest.c,v
retrieving revision 1.15
diff -u -p -r1.15 qemuxml2argvtest.c
--- tests/qemuxml2argvtest.c 25 Apr 2008 20:46:13 -0000 1.15
+++ tests/qemuxml2argvtest.c 29 Apr 2008 17:15:38 -0000
@@ -146,6 +146,7 @@ main(int argc, char **argv)
DO_TEST("misc-acpi");
DO_TEST("misc-no-reboot");
DO_TEST("net-user");
+ DO_TEST("net-virtio");
DO_TEST("serial-vc");
DO_TEST("serial-pty");
Index: tests/qemuxml2xmltest.c
===================================================================
RCS file: /data/cvs/libvirt/tests/qemuxml2xmltest.c,v
retrieving revision 1.13
diff -u -p -r1.13 qemuxml2xmltest.c
--- tests/qemuxml2xmltest.c 25 Apr 2008 20:46:13 -0000 1.13
+++ tests/qemuxml2xmltest.c 29 Apr 2008 17:15:38 -0000
@@ -109,6 +109,7 @@ main(int argc, char **argv)
DO_TEST("misc-acpi");
DO_TEST("misc-no-reboot");
DO_TEST("net-user");
+ DO_TEST("net-virtio");
DO_TEST("serial-vc");
DO_TEST("serial-pty");
Index: tests/sexpr2xmltest.c
===================================================================
RCS file: /data/cvs/libvirt/tests/sexpr2xmltest.c,v
retrieving revision 1.26
diff -u -p -r1.26 sexpr2xmltest.c
--- tests/sexpr2xmltest.c 26 Apr 2008 14:22:02 -0000 1.26
+++ tests/sexpr2xmltest.c 29 Apr 2008 17:15:38 -0000
@@ -116,6 +116,7 @@ main(int argc, char **argv)
DO_TEST("curmem", "curmem", 1);
DO_TEST("net-routed", "net-routed", 2);
DO_TEST("net-bridged", "net-bridged", 2);
+ DO_TEST("net-e1000", "net-e1000", 2);
DO_TEST("no-source-cdrom", "no-source-cdrom", 1);
DO_TEST("fv-utc", "fv-utc", 1);
Index: tests/testutils.c
===================================================================
RCS file: /data/cvs/libvirt/tests/testutils.c,v
retrieving revision 1.12
diff -u -p -r1.12 testutils.c
--- tests/testutils.c 18 Apr 2008 15:05:29 -0000 1.12
+++ tests/testutils.c 29 Apr 2008 17:15:38 -0000
@@ -23,6 +23,7 @@
#include <fcntl.h>
#include <limits.h>
#include "testutils.h"
+#include "internal.h"
#ifdef HAVE_PATHS_H
#include <paths.h>
@@ -231,23 +232,27 @@ int virtTestDifference(FILE *stream,
const char *expectEnd = expect + (strlen(expect)-1);
const char *actualStart = actual;
const char *actualEnd = actual + (strlen(actual)-1);
+ const char *debug;
- if (getenv("DEBUG_TESTS") == NULL)
+ if ((debug = getenv("DEBUG_TESTS")) == NULL)
return 0;
- /* Skip to first character where they differ */
- while (*expectStart && *actualStart &&
- *actualStart == *expectStart) {
- actualStart++;
- expectStart++;
- }
+ if (STREQ(debug, "") ||
+ STREQ(debug, "1")) {
+ /* Skip to first character where they differ */
+ while (*expectStart && *actualStart &&
+ *actualStart == *expectStart) {
+ actualStart++;
+ expectStart++;
+ }
- /* Work backwards to last character where they differ */
- while (actualEnd > actualStart &&
- expectEnd > expectStart &&
- *actualEnd == *expectEnd) {
- actualEnd--;
- expectEnd--;
+ /* Work backwards to last character where they differ */
+ while (actualEnd > actualStart &&
+ expectEnd > expectStart &&
+ *actualEnd == *expectEnd) {
+ actualEnd--;
+ expectEnd--;
+ }
}
/* Show the trimmed differences */
Index: tests/xmconfigtest.c
===================================================================
RCS file: /data/cvs/libvirt/tests/xmconfigtest.c,v
retrieving revision 1.15
diff -u -p -r1.15 xmconfigtest.c
--- tests/xmconfigtest.c 26 Apr 2008 14:22:02 -0000 1.15
+++ tests/xmconfigtest.c 29 Apr 2008 17:15:39 -0000
@@ -202,6 +202,7 @@ main(int argc, char **argv)
DO_TEST("paravirt-old-pvfb", 2);
DO_TEST("paravirt-new-pvfb", 3);
+ DO_TEST("paravirt-net-e1000", 3);
DO_TEST("fullvirt-old-cdrom", 1);
DO_TEST("fullvirt-new-cdrom", 2);
DO_TEST("fullvirt-utc", 2);
Index: tests/xml2sexprtest.c
===================================================================
RCS file: /data/cvs/libvirt/tests/xml2sexprtest.c,v
retrieving revision 1.25
diff -u -p -r1.25 xml2sexprtest.c
--- tests/xml2sexprtest.c 26 Apr 2008 14:22:02 -0000 1.25
+++ tests/xml2sexprtest.c 29 Apr 2008 17:15:39 -0000
@@ -123,6 +123,7 @@ main(int argc, char **argv)
DO_TEST("curmem", "curmem", "rhel5", 2);
DO_TEST("net-routed", "net-routed", "pvtest", 2);
DO_TEST("net-bridged", "net-bridged", "pvtest", 2);
+ DO_TEST("net-e1000", "net-e1000", "pvtest", 2);
DO_TEST("no-source-cdrom", "no-source-cdrom", "test", 2);
DO_TEST("fv-utc", "fv-utc", "fvtest", 1);
Index: tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args
===================================================================
RCS file: tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args
diff -N tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1 @@
+/usr/bin/qemu -M pc -m 214 -smp 1 -nographic -monitor pty -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net nic,macaddr=00:11:22:33:44:55,vlan=0,model=virtio -net user,vlan=0 -serial none -parallel none -usb
\ No newline at end of file
Index: tests/qemuxml2argvdata/qemuxml2argv-net-virtio.xml
===================================================================
RCS file: tests/qemuxml2argvdata/qemuxml2argv-net-virtio.xml
diff -N tests/qemuxml2argvdata/qemuxml2argv-net-virtio.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/qemuxml2argvdata/qemuxml2argv-net-virtio.xml 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1,26 @@
+<domain type='qemu'>
+ <name>QEMUGuest1</name>
+ <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid>
+ <memory>219200</memory>
+ <currentMemory>219200</currentMemory>
+ <vcpu>1</vcpu>
+ <os>
+ <type arch='i686' machine='pc'>hvm</type>
+ <boot dev='hd'/>
+ </os>
+ <clock offset='utc'/>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>destroy</on_crash>
+ <devices>
+ <emulator>/usr/bin/qemu</emulator>
+ <disk type='block' device='disk'>
+ <source dev='/dev/HostVG/QEMUGuest1'/>
+ <target dev='hda'/>
+ </disk>
+ <interface type='user'>
+ <mac address='00:11:22:33:44:55'/>
+ <model type='virtio'/>
+ </interface>
+ </devices>
+</domain>
Index: tests/sexpr2xmldata/sexpr2xml-net-e1000.sexpr
===================================================================
RCS file: tests/sexpr2xmldata/sexpr2xml-net-e1000.sexpr
diff -N tests/sexpr2xmldata/sexpr2xml-net-e1000.sexpr
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/sexpr2xmldata/sexpr2xml-net-e1000.sexpr 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1,2 @@
+(domain (domid 6)(name 'pvtest')(memory 420)(maxmem 420)(vcpus 2)(uuid '596a5d2171f48fb2e068e2386a5c413e')(on_poweroff 'destroy')(on_reboot 'destroy')(on_crash 'destroy')(image (linux (kernel '/var/lib/xen/vmlinuz.2Dn2YT')(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')(args ' method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test... ')))(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode 'w')))(device (vif (mac '00:11:22:33:44:55')(bridge 'xenbr2')(script 'vif-bridge')(model 'e1000'))))
+
Index: tests/sexpr2xmldata/sexpr2xml-net-e1000.xml
===================================================================
RCS file: tests/sexpr2xmldata/sexpr2xml-net-e1000.xml
diff -N tests/sexpr2xmldata/sexpr2xml-net-e1000.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/sexpr2xmldata/sexpr2xml-net-e1000.xml 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1,32 @@
+<domain type='xen' id='6'>
+ <name>pvtest</name>
+ <uuid>596a5d21-71f4-8fb2-e068-e2386a5c413e</uuid>
+ <os>
+ <type>linux</type>
+ <kernel>/var/lib/xen/vmlinuz.2Dn2YT</kernel>
+ <initrd>/var/lib/xen/initrd.img.0u-Vhq</initrd>
+ <cmdline> method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test... </cmdline>
+ </os>
+ <memory>430080</memory>
+ <vcpu>2</vcpu>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>destroy</on_reboot>
+ <on_crash>destroy</on_crash>
+ <devices>
+ <disk type='file' device='disk'>
+ <driver name='file'/>
+ <source file='/root/some.img'/>
+ <target dev='xvda'/>
+ </disk>
+ <interface type='bridge'>
+ <source bridge='xenbr2'/>
+ <target dev='vif6.0'/>
+ <mac address='00:11:22:33:44:55'/>
+ <script path='vif-bridge'/>
+ <model type='e1000'/>
+ </interface>
+ <console type='pty'>
+ <target port='0'/>
+ </console>
+ </devices>
+</domain>
Index: tests/xmconfigdata/test-paravirt-net-e1000.cfg
===================================================================
RCS file: tests/xmconfigdata/test-paravirt-net-e1000.cfg
diff -N tests/xmconfigdata/test-paravirt-net-e1000.cfg
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/xmconfigdata/test-paravirt-net-e1000.cfg 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1,12 @@
+name = "XenGuest1"
+uuid = "c7a5fdb0-cdaf-9455-926a-d65c16db1809"
+maxmem = 579
+memory = 394
+vcpus = 1
+bootloader = "/usr/bin/pygrub"
+on_poweroff = "destroy"
+on_reboot = "restart"
+on_crash = "restart"
+vfb = [ "type=vnc,vncunused=1,vnclisten=127.0.0.1,vncpasswd=123poi" ]
+disk = [ "phy:/dev/HostVG/XenGuest1,xvda,w" ]
+vif = [ "mac=00:16:3E:66:94:9C,model=e1000,ip=192.168.0.9" ]
Index: tests/xmconfigdata/test-paravirt-net-e1000.xml
===================================================================
RCS file: tests/xmconfigdata/test-paravirt-net-e1000.xml
diff -N tests/xmconfigdata/test-paravirt-net-e1000.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/xmconfigdata/test-paravirt-net-e1000.xml 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1,28 @@
+<domain type='xen'>
+ <name>XenGuest1</name>
+ <uuid>c7a5fdb0-cdaf-9455-926a-d65c16db1809</uuid>
+ <bootloader>/usr/bin/pygrub</bootloader>
+ <currentMemory>403456</currentMemory>
+ <memory>592896</memory>
+ <vcpu>1</vcpu>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>restart</on_crash>
+ <devices>
+ <disk type='block' device='disk'>
+ <driver name='phy'/>
+ <source dev='/dev/HostVG/XenGuest1'/>
+ <target dev='xvda'/>
+ </disk>
+ <interface type='bridge'>
+ <mac address='00:16:3E:66:94:9C'/>
+ <ip address='192.168.0.9'/>
+ <model type='e1000'/>
+ </interface>
+ <input type='mouse' bus='xen'/>
+ <graphics type='vnc' port='-1' listen='127.0.0.1' passwd='123poi'/>
+ <console type='pty'>
+ <target port='0'/>
+ </console>
+ </devices>
+</domain>
Index: tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
===================================================================
RCS file: tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
diff -N tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/xml2sexprdata/xml2sexpr-net-e1000.sexpr 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1 @@
+(vm (name 'pvtest')(memory 420)(maxmem 420)(vcpus 2)(uuid '596a5d2171f48fb2e068e2386a5c413e')(on_poweroff 'destroy')(on_reboot 'destroy')(on_crash 'destroy')(image (linux (kernel '/var/lib/xen/vmlinuz.2Dn2YT')(ramdisk '/var/lib/xen/initrd.img.0u-Vhq')(args ' method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test... ')))(device (vbd (dev 'xvda')(uname 'file:/root/some.img')(mode 'w')))(device (vif (mac '00:11:22:33:44:55')(bridge 'xenbr2')(script 'vif-bridge')(model 'e1000'))))
\ No newline at end of file
Index: tests/xml2sexprdata/xml2sexpr-net-e1000.xml
===================================================================
RCS file: tests/xml2sexprdata/xml2sexpr-net-e1000.xml
diff -N tests/xml2sexprdata/xml2sexpr-net-e1000.xml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tests/xml2sexprdata/xml2sexpr-net-e1000.xml 29 Apr 2008 17:15:39 -0000
@@ -0,0 +1,30 @@
+<domain type='xen' id='15'>
+ <name>pvtest</name>
+ <uuid>596a5d2171f48fb2e068e2386a5c413e</uuid>
+ <os>
+ <type>linux</type>
+ <kernel>/var/lib/xen/vmlinuz.2Dn2YT</kernel>
+ <initrd>/var/lib/xen/initrd.img.0u-Vhq</initrd>
+ <cmdline> method=http://download.fedora.devel.redhat.com/pub/fedora/linux/core/test... </cmdline>
+ </os>
+ <memory>430080</memory>
+ <vcpu>2</vcpu>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>destroy</on_reboot>
+ <on_crash>destroy</on_crash>
+ <devices>
+ <disk type='file' device='disk'>
+ <source file='/root/some.img'/>
+ <target dev='xvda'/>
+ </disk>
+ <interface type="bridge">
+ <mac address="00:11:22:33:44:55"/>
+ <source bridge="xenbr2"/>
+ <script path="vif-bridge"/>
+ <model type='e1000'/>
+ <target dev="vif4.0"/>
+ </interface>
+ <console tty='/dev/pts/4'/>
+ </devices>
+</domain>
+
--
|: Red Hat, Engineering, Boston -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
16 years, 6 months