if (def->forward.nifs &&
(!def->forward.npfs || !(flags & VIR_NETWORK_XML_INACTIVE))) {
for (i = 0; i < def->forward.nifs; i++) {
- if (def->forward.type != VIR_NETWORK_FORWARD_HOSTDEV) {
+ if (def->forward.ifs[i].type == VIR_NETWORK_FORWARD_HOSTDEV_DEVICE_NETDEV) {
virBufferEscapeString(buf, "<interface dev='%s'",
def->forward.ifs[i].device.dev);
if (!(flags & VIR_NETWORK_XML_INACTIVE) &&
def->forward.ifs[i].connections);
}
virBufferAddLit(buf, "/>\n");
- }
- else {
+ } else {
if (def->forward.ifs[i].type == VIR_NETWORK_FORWARD_HOSTDEV_DEVICE_PCI) {
if (virDevicePCIAddressFormat(buf,
def->forward.ifs[i].device.pci,
--- /dev/null
+<network>
+ <name>passthrough_001</name>
+ <uuid>50e92386-8dd1-4a95-8a4b-9a888274eb66</uuid>
+ <forward mode='passthrough'>
+ <address type='pci' domain='0x0000' bus='0x11' slot='0x10' function='0x1'/>
+ </forward>
+</network>
--- /dev/null
+<network>
+ <name>passthrough_001</name>
+ <uuid>50e92386-8dd1-4a95-8a4b-9a888274eb66</uuid>
+ <forward mode='passthrough'>
+ <address type='pci' domain='0x0000' bus='0x11' slot='0x10' function='0x1'/>
+ </forward>
+</network>
DO_TEST_FULL("passthrough-pf", VIR_NETWORK_XML_INACTIVE);
DO_TEST("hostdev");
DO_TEST_FULL("hostdev-pf", VIR_NETWORK_XML_INACTIVE);
+ DO_TEST("passthrough-address-crash");
return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}