]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
nodedev: Fix aclfilter check
authorJohn Ferlan <jferlan@redhat.com>
Mon, 10 Apr 2017 17:45:27 +0000 (13:45 -0400)
committerJohn Ferlan <jferlan@redhat.com>
Mon, 10 Apr 2017 17:52:05 +0000 (13:52 -0400)
For both virNodeDeviceObjNumOfDevices and virNodeDeviceObjGetNames, the
check should be if the aclfilter doesn't exist or if it does exist, then
it must pass

src/conf/virnodedeviceobj.c

index 75ba1a02da7b5d50615347595638571a28a2ea53..4f47b4e41b06aa64ea5de3bb903b427c68c9fa62 100644 (file)
@@ -486,7 +486,7 @@ virNodeDeviceObjNumOfDevices(virNodeDeviceObjListPtr devs,
     for (i = 0; i < devs->count; i++) {
         virNodeDeviceObjPtr obj = devs->objs[i];
         virNodeDeviceObjLock(obj);
-        if (aclfilter && aclfilter(conn, obj->def) &&
+        if ((!aclfilter || aclfilter(conn, obj->def)) &&
             (!cap || virNodeDeviceObjHasCap(obj, cap)))
             ++ndevs;
         virNodeDeviceObjUnlock(obj);
@@ -510,7 +510,7 @@ virNodeDeviceObjGetNames(virNodeDeviceObjListPtr devs,
     for (i = 0; i < devs->count && nnames < maxnames; i++) {
         virNodeDeviceObjPtr obj = devs->objs[i];
         virNodeDeviceObjLock(obj);
-        if (aclfilter && aclfilter(conn, obj->def) &&
+        if ((!aclfilter || aclfilter(conn, obj->def)) &&
             (!cap || virNodeDeviceObjHasCap(obj, cap))) {
             if (VIR_STRDUP(names[nnames], obj->def->name) < 0) {
                 virNodeDeviceObjUnlock(obj);