+Fri Jan 30 17:16:22 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
+
+ * src/qemu_conf.c: Fix ifname= handling for type=ethernet
+ networking config to avoid literal (null)
+ * tests/qemuxml2argvtest.c, tests/qemuxml2xmltest.c,
+ tests/qemuxml2argvdata/: Add test case for ethernet
+ interface config
+
Fri Jan 30 17:12:22 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
Support <driver cache='none|writeback|writethrough'/> cache
case VIR_DOMAIN_NET_TYPE_ETHERNET:
{
char arg[PATH_MAX];
- if (snprintf(arg, PATH_MAX-1, "tap,ifname=%s,script=%s,vlan=%d",
- net->ifname,
- net->data.ethernet.script,
- vlan) >= (PATH_MAX-1))
- goto error;
+ if (net->ifname) {
+ if (snprintf(arg, PATH_MAX-1, "tap,ifname=%s,script=%s,vlan=%d",
+ net->ifname,
+ net->data.ethernet.script,
+ vlan) >= (PATH_MAX-1))
+ goto error;
+ } else {
+ if (snprintf(arg, PATH_MAX-1, "tap,script=%s,vlan=%d",
+ net->data.ethernet.script,
+ vlan) >= (PATH_MAX-1))
+ goto error;
+ }
ADD_ARG_LIT(arg);
}
--- /dev/null
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net nic,macaddr=00:11:22:33:44:55,vlan=0 -net tap,ifname=nic02,script=/etc/qemu-ifup,vlan=0 -serial none -parallel none -usb
--- /dev/null
+<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' bus='ide'/>
+ </disk>
+ <interface type='ethernet'>
+ <mac address='00:11:22:33:44:55'/>
+ <script path='/etc/qemu-ifup'/>
+ <target dev='nic02'/>
+ </interface>
+ </devices>
+</domain>
--- /dev/null
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor pty -pidfile /nowhere/QEMUGuest1.pid -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net nic,macaddr=00:11:22:33:44:55,vlan=0 -net tap,script=/etc/qemu-ifup,vlan=0 -serial none -parallel none -usb
--- /dev/null
+<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' bus='ide'/>
+ </disk>
+ <interface type='ethernet'>
+ <mac address='00:11:22:33:44:55'/>
+ <script path='/etc/qemu-ifup'/>
+ </interface>
+ </devices>
+</domain>
QEMUD_CMD_FLAG_UUID | QEMUD_CMD_FLAG_DOMID);
DO_TEST("net-user", 0);
DO_TEST("net-virtio", 0);
+ DO_TEST("net-eth", 0);
+ DO_TEST("net-eth-ifname", 0);
DO_TEST("serial-vc", 0);
DO_TEST("serial-pty", 0);
DO_TEST("misc-no-reboot");
DO_TEST("net-user");
DO_TEST("net-virtio");
+ DO_TEST("net-eth");
+ DO_TEST("net-eth-ifname");
DO_TEST("sound");
DO_TEST("serial-vc");