render / rpms / libvirt

Forked from rpms/libvirt a year ago
Clone
c8c376
From 26de75ae434598a20fb68d4a7a4701f463f6328c Mon Sep 17 00:00:00 2001
c8c376
Message-Id: <26de75ae434598a20fb68d4a7a4701f463f6328c@dist-git>
c8c376
From: Michal Privoznik <mprivozn@redhat.com>
c8c376
Date: Tue, 8 Nov 2016 13:42:05 +0100
c8c376
Subject: [PATCH] qemuBuildInterfaceCommandLine: Move from if-else forest to
c8c376
 switch
c8c376
c8c376
RHEL-7.3: https://bugzilla.redhat.com/show_bug.cgi?id=1366108
c8c376
RHEL-7.3.z: https://bugzilla.redhat.com/show_bug.cgi?id=1392032
c8c376
c8c376
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
c8c376
(cherry picked from commit 0bce012d7f0bbf68c1b42a93d7d1c4e085e2695e)
c8c376
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
c8c376
---
c8c376
 src/qemu/qemu_command.c | 34 +++++++++++++++++++++++++++-------
c8c376
 1 file changed, 27 insertions(+), 7 deletions(-)
c8c376
c8c376
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
c8c376
index a9b91213d..8bebe437a 100644
c8c376
--- a/src/qemu/qemu_command.c
c8c376
+++ b/src/qemu/qemu_command.c
c8c376
@@ -8041,8 +8041,9 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
c8c376
 
c8c376
     cfg = virQEMUDriverGetConfig(driver);
c8c376
 
c8c376
-    if (actualType == VIR_DOMAIN_NET_TYPE_NETWORK ||
c8c376
-        actualType == VIR_DOMAIN_NET_TYPE_BRIDGE) {
c8c376
+    switch (actualType) {
c8c376
+    case VIR_DOMAIN_NET_TYPE_NETWORK:
c8c376
+    case VIR_DOMAIN_NET_TYPE_BRIDGE:
c8c376
         tapfdSize = net->driver.virtio.queues;
c8c376
         if (!tapfdSize)
c8c376
             tapfdSize = 1;
c8c376
@@ -8056,7 +8057,9 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
c8c376
         if (qemuInterfaceBridgeConnect(def, driver, net,
c8c376
                                        tapfd, &tapfdSize) < 0)
c8c376
             goto cleanup;
c8c376
-    } else if (actualType == VIR_DOMAIN_NET_TYPE_DIRECT) {
c8c376
+        break;
c8c376
+
c8c376
+    case VIR_DOMAIN_NET_TYPE_DIRECT:
c8c376
         tapfdSize = net->driver.virtio.queues;
c8c376
         if (!tapfdSize)
c8c376
             tapfdSize = 1;
c8c376
@@ -8070,7 +8073,9 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
c8c376
         if (qemuInterfaceDirectConnect(def, driver, net,
c8c376
                                        tapfd, tapfdSize, vmop) < 0)
c8c376
             goto cleanup;
c8c376
-    } else if (actualType == VIR_DOMAIN_NET_TYPE_ETHERNET) {
c8c376
+        break;
c8c376
+
c8c376
+    case VIR_DOMAIN_NET_TYPE_ETHERNET:
c8c376
         tapfdSize = net->driver.virtio.queues;
c8c376
         if (!tapfdSize)
c8c376
             tapfdSize = 1;
c8c376
@@ -8082,17 +8087,32 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
c8c376
         memset(tapfd, -1, tapfdSize * sizeof(tapfd[0]));
c8c376
 
c8c376
         if (qemuInterfaceEthernetConnect(def, driver, net,
c8c376
-                                       tapfd, tapfdSize) < 0)
c8c376
+                                         tapfd, tapfdSize) < 0)
c8c376
             goto cleanup;
c8c376
-    } else if (actualType == VIR_DOMAIN_NET_TYPE_HOSTDEV) {
c8c376
+        break;
c8c376
+
c8c376
+    case VIR_DOMAIN_NET_TYPE_HOSTDEV:
c8c376
         /* NET_TYPE_HOSTDEV devices are really hostdev devices, so
c8c376
          * their commandlines are constructed with other hostdevs.
c8c376
          */
c8c376
         ret = 0;
c8c376
         goto cleanup;
c8c376
-    } else if (actualType == VIR_DOMAIN_NET_TYPE_VHOSTUSER) {
c8c376
+        break;
c8c376
+
c8c376
+    case VIR_DOMAIN_NET_TYPE_VHOSTUSER:
c8c376
         ret = qemuBuildVhostuserCommandLine(cmd, def, net, qemuCaps, bootindex);
c8c376
         goto cleanup;
c8c376
+        break;
c8c376
+
c8c376
+    case VIR_DOMAIN_NET_TYPE_USER:
c8c376
+    case VIR_DOMAIN_NET_TYPE_SERVER:
c8c376
+    case VIR_DOMAIN_NET_TYPE_CLIENT:
c8c376
+    case VIR_DOMAIN_NET_TYPE_MCAST:
c8c376
+    case VIR_DOMAIN_NET_TYPE_INTERNAL:
c8c376
+    case VIR_DOMAIN_NET_TYPE_UDP:
c8c376
+    case VIR_DOMAIN_NET_TYPE_LAST:
c8c376
+        /* nada */
c8c376
+        break;
c8c376
     }
c8c376
 
c8c376
     /* For types whose implementations use a netdev on the host, add
c8c376
-- 
c8c376
2.11.0
c8c376