[libvirt PATCH 13/14] qemuAgentGetInterfaceAddresses: turn ifname into char*

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We only care about the first part of the 'ifname' string,
splitting it is overkill.

Instead, just replace the ':' with a '\0' in a copy of the string.
This reduces the count of the varaibles containing some form
of the interface name to two.

Signed-off-by: Ján Tomko <jtomko@xxxxxxxxxx>
---
 src/qemu/qemu_agent.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/src/qemu/qemu_agent.c b/src/qemu/qemu_agent.c
index 210b308610..b6c37b6b0d 100644
--- a/src/qemu/qemu_agent.c
+++ b/src/qemu/qemu_agent.c
@@ -2111,9 +2111,9 @@ qemuAgentGetInterfaceAddresses(virDomainInterfacePtr **ifaces_ret,
                                virJSONValuePtr tmp_iface)
 {
     virJSONValuePtr ip_addr_arr = NULL;
-    const char *hwaddr, *ifname_s, *name = NULL;
+    const char *hwaddr, *name = NULL;
     virDomainInterfacePtr iface = NULL;
-    g_auto(GStrv) ifname = NULL;
+    g_autofree char *ifname = NULL;
     size_t addrs_count = 0;
     size_t j;
 
@@ -2126,10 +2126,9 @@ qemuAgentGetInterfaceAddresses(virDomainInterfacePtr **ifaces_ret,
     }
 
     /* Handle interface alias (<ifname>:<alias>) */
-    ifname = virStringSplit(name, ":", 2);
-    ifname_s = ifname[0];
+    ifname = g_strdelimit(g_strdup(name), ":", '\0');
 
-    iface = virHashLookup(ifaces_store, ifname_s);
+    iface = virHashLookup(ifaces_store, ifname);
 
     /* If the hash table doesn't contain this iface, add it */
     if (!iface) {
@@ -2139,11 +2138,11 @@ qemuAgentGetInterfaceAddresses(virDomainInterfacePtr **ifaces_ret,
         iface = g_new0(virDomainInterface, 1);
         (*ifaces_ret)[*ifaces_count - 1] = iface;
 
-        if (virHashAddEntry(ifaces_store, ifname_s, iface) < 0)
+        if (virHashAddEntry(ifaces_store, ifname, iface) < 0)
             return -1;
 
         iface->naddrs = 0;
-        iface->name = g_strdup(ifname_s);
+        iface->name = g_strdup(ifname);
 
         hwaddr = virJSONValueObjectGetString(tmp_iface, "hardware-address");
         iface->hwaddr = g_strdup(hwaddr);
-- 
2.26.2




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux