mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-14 12:58:33 +03:00
nwfilter: Make a common UUID lookup function from driver
Rather than separate calls, use a common call and generate a better error message which includes the incorrect uuidstr. Signed-off-by: John Ferlan <jferlan@redhat.com>
This commit is contained in:
parent
6181e404d9
commit
6b73a13212
@ -356,6 +356,21 @@ nwfilterStateCleanup(void)
|
||||
}
|
||||
|
||||
|
||||
static virNWFilterObjPtr
|
||||
nwfilterObjFromNWFilter(const unsigned char *uuid)
|
||||
{
|
||||
virNWFilterObjPtr obj;
|
||||
char uuidstr[VIR_UUID_STRING_BUFLEN];
|
||||
|
||||
if (!(obj = virNWFilterObjListFindByUUID(driver->nwfilters, uuid))) {
|
||||
virUUIDFormat(uuid, uuidstr);
|
||||
virReportError(VIR_ERR_NO_NWFILTER,
|
||||
_("no nwfilter with matching uuid '%s'"), uuidstr);
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
|
||||
static virNWFilterPtr
|
||||
nwfilterLookupByUUID(virConnectPtr conn,
|
||||
const unsigned char *uuid)
|
||||
@ -365,14 +380,11 @@ nwfilterLookupByUUID(virConnectPtr conn,
|
||||
virNWFilterPtr ret = NULL;
|
||||
|
||||
nwfilterDriverLock();
|
||||
obj = virNWFilterObjListFindByUUID(driver->nwfilters, uuid);
|
||||
obj = nwfilterObjFromNWFilter(uuid);
|
||||
nwfilterDriverUnlock();
|
||||
|
||||
if (!obj) {
|
||||
virReportError(VIR_ERR_NO_NWFILTER,
|
||||
"%s", _("no nwfilter with matching uuid"));
|
||||
if (!obj)
|
||||
goto cleanup;
|
||||
}
|
||||
def = virNWFilterObjGetDef(obj);
|
||||
|
||||
if (virNWFilterLookupByUUIDEnsureACL(conn, def) < 0)
|
||||
@ -528,12 +540,8 @@ nwfilterUndefine(virNWFilterPtr nwfilter)
|
||||
virNWFilterWriteLockFilterUpdates();
|
||||
virNWFilterCallbackDriversLock();
|
||||
|
||||
obj = virNWFilterObjListFindByUUID(driver->nwfilters, nwfilter->uuid);
|
||||
if (!obj) {
|
||||
virReportError(VIR_ERR_NO_NWFILTER,
|
||||
"%s", _("no nwfilter with matching uuid"));
|
||||
if (!(obj = nwfilterObjFromNWFilter(nwfilter->uuid)))
|
||||
goto cleanup;
|
||||
}
|
||||
def = virNWFilterObjGetDef(obj);
|
||||
|
||||
if (virNWFilterUndefineEnsureACL(nwfilter->conn, def) < 0)
|
||||
@ -575,14 +583,11 @@ nwfilterGetXMLDesc(virNWFilterPtr nwfilter,
|
||||
virCheckFlags(0, NULL);
|
||||
|
||||
nwfilterDriverLock();
|
||||
obj = virNWFilterObjListFindByUUID(driver->nwfilters, nwfilter->uuid);
|
||||
obj = nwfilterObjFromNWFilter(nwfilter->uuid);
|
||||
nwfilterDriverUnlock();
|
||||
|
||||
if (!obj) {
|
||||
virReportError(VIR_ERR_NO_NWFILTER,
|
||||
"%s", _("no nwfilter with matching uuid"));
|
||||
if (!obj)
|
||||
goto cleanup;
|
||||
}
|
||||
def = virNWFilterObjGetDef(obj);
|
||||
|
||||
if (virNWFilterGetXMLDescEnsureACL(nwfilter->conn, def) < 0)
|
||||
|
Loading…
x
Reference in New Issue
Block a user