]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: Introduce virDomainNetFindByName
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 2 Oct 2017 13:04:14 +0000 (15:04 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 5 Oct 2017 07:16:05 +0000 (09:16 +0200)
Small wrapper to lookup interface in domain definition by its
name.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
src/conf/domain_conf.c
src/conf/domain_conf.h
src/libvirt_private.syms

index 51aed84917418f0034982d58ad18077eb71d513c..c502ed951db6799d77b6687b42ea876227f61b21 100644 (file)
@@ -27004,17 +27004,37 @@ virDomainNetFind(virDomainDefPtr def, const char *device)
             }
         }
     } else { /* ifname */
-        for (i = 0; i < def->nnets; i++) {
-            if (STREQ_NULLABLE(device, def->nets[i]->ifname)) {
-                net = def->nets[i];
-                break;
-            }
-        }
+        net = virDomainNetFindByName(def, device);
     }
 
     return net;
 }
 
+
+/**
+ * virDomainNetFindByName:
+ * @def: domain's def
+ * @ifname: interface name
+ *
+ * Finds a domain's net def given the interface name.
+ *
+ * Returns a pointer to the net def or NULL if not found.
+ */
+virDomainNetDefPtr
+virDomainNetFindByName(virDomainDefPtr def,
+                       const char *ifname)
+{
+    size_t i;
+
+    for (i = 0; i < def->nnets; i++) {
+        if (STREQ_NULLABLE(ifname, def->nets[i]->ifname))
+            return def->nets[i];
+    }
+
+    return NULL;
+}
+
+
 /**
  * virDomainDeviceDefCopy:
  * @caps: Capabilities
index 28abe2b0b20c7942d88a2dcf1b0bdc94e171bb1c..5f922068d5b2280ee46bc224ccaba18e83c49abd 100644 (file)
@@ -3001,6 +3001,7 @@ int virDomainDiskSourceParse(xmlNodePtr node,
 
 int virDomainNetFindIdx(virDomainDefPtr def, virDomainNetDefPtr net);
 virDomainNetDefPtr virDomainNetFind(virDomainDefPtr def, const char *device);
+virDomainNetDefPtr virDomainNetFindByName(virDomainDefPtr def, const char *ifname);
 bool virDomainHasNet(virDomainDefPtr def, virDomainNetDefPtr net);
 int virDomainNetInsert(virDomainDefPtr def, virDomainNetDefPtr net);
 virDomainNetDefPtr virDomainNetRemove(virDomainDefPtr def, size_t i);
index 5b1bc5e4fe91cd30f4d25f95a39339e4e152b15f..7a12d6a14666524bf54160ed87c92c365e2b05f9 100644 (file)
@@ -422,6 +422,7 @@ virDomainNetDefClear;
 virDomainNetDefFormat;
 virDomainNetDefFree;
 virDomainNetFind;
+virDomainNetFindByName;
 virDomainNetFindIdx;
 virDomainNetGenerateMAC;
 virDomainNetGetActualBandwidth;