filter->name, vars, driver);
goto err_exit;
} else if (STRCASEEQ(learning, "any")) {
- if (virNWFilterLookupLearnReq(ifindex) == NULL) {
+ if (!virNWFilterHasLearnReq(ifindex)) {
rc = virNWFilterLearnIPAddress(techdriver,
ifname,
ifindex,
} else if (virHashSize(missing_vars) > 1) {
goto err_unresolvable_vars;
} else if (!forceWithPendingReq &&
- virNWFilterLookupLearnReq(ifindex) != NULL) {
+ virNWFilterHasLearnReq(ifindex)) {
goto err_exit;
}
/* don't tear anything while the address is being learned */
if (virNetDevGetIndex(net->ifname, &ifindex) < 0)
virResetLastError();
- else if (virNWFilterLookupLearnReq(ifindex) != NULL)
+ else if (virNWFilterHasLearnReq(ifindex))
return 0;
return techdriver->tearNewRules(net->ifname);
/* don't tear anything while the address is being learned */
if (virNetDevGetIndex(net->ifname, &ifindex) < 0)
virResetLastError();
- else if (virNWFilterLookupLearnReq(ifindex) != NULL)
+ else if (virNWFilterHasLearnReq(ifindex))
return 0;
return techdriver->tearOldRules(net->ifname);
}
-virNWFilterIPAddrLearnReqPtr
-virNWFilterLookupLearnReq(int ifindex)
+bool
+virNWFilterHasLearnReq(int ifindex)
{
void *res;
IFINDEX2STR(ifindex_str, ifindex);
virMutexUnlock(&pendingLearnReqLock);
- return res;
+ return res != NULL;
}
virNWFilterDriverStatePtr driver,
enum howDetect howDetect);
-virNWFilterIPAddrLearnReqPtr virNWFilterLookupLearnReq(int ifindex);
+bool virNWFilterHasLearnReq(int ifindex);
int virNWFilterTerminateLearnReq(const char *ifname);
int virNWFilterLockIface(const char *ifname) ATTRIBUTE_RETURN_CHECK;