提交 784742c7 编写于 作者: M Michal Privoznik

conf: Introduce virDomainNetFindByName

Small wrapper to lookup interface in domain definition by its
name.
Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
上级 98eabee0
...@@ -27004,17 +27004,37 @@ virDomainNetFind(virDomainDefPtr def, const char *device) ...@@ -27004,17 +27004,37 @@ virDomainNetFind(virDomainDefPtr def, const char *device)
} }
} }
} else { /* ifname */ } else { /* ifname */
for (i = 0; i < def->nnets; i++) { net = virDomainNetFindByName(def, device);
if (STREQ_NULLABLE(device, def->nets[i]->ifname)) {
net = def->nets[i];
break;
}
}
} }
return net; 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: * virDomainDeviceDefCopy:
* @caps: Capabilities * @caps: Capabilities
......
...@@ -3001,6 +3001,7 @@ int virDomainDiskSourceParse(xmlNodePtr node, ...@@ -3001,6 +3001,7 @@ int virDomainDiskSourceParse(xmlNodePtr node,
int virDomainNetFindIdx(virDomainDefPtr def, virDomainNetDefPtr net); int virDomainNetFindIdx(virDomainDefPtr def, virDomainNetDefPtr net);
virDomainNetDefPtr virDomainNetFind(virDomainDefPtr def, const char *device); virDomainNetDefPtr virDomainNetFind(virDomainDefPtr def, const char *device);
virDomainNetDefPtr virDomainNetFindByName(virDomainDefPtr def, const char *ifname);
bool virDomainHasNet(virDomainDefPtr def, virDomainNetDefPtr net); bool virDomainHasNet(virDomainDefPtr def, virDomainNetDefPtr net);
int virDomainNetInsert(virDomainDefPtr def, virDomainNetDefPtr net); int virDomainNetInsert(virDomainDefPtr def, virDomainNetDefPtr net);
virDomainNetDefPtr virDomainNetRemove(virDomainDefPtr def, size_t i); virDomainNetDefPtr virDomainNetRemove(virDomainDefPtr def, size_t i);
......
...@@ -422,6 +422,7 @@ virDomainNetDefClear; ...@@ -422,6 +422,7 @@ virDomainNetDefClear;
virDomainNetDefFormat; virDomainNetDefFormat;
virDomainNetDefFree; virDomainNetDefFree;
virDomainNetFind; virDomainNetFind;
virDomainNetFindByName;
virDomainNetFindIdx; virDomainNetFindIdx;
virDomainNetGenerateMAC; virDomainNetGenerateMAC;
virDomainNetGetActualBandwidth; virDomainNetGetActualBandwidth;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册