fw3_pr(" hashsize %u", ipset->hashsize);
fw3_pr("\n");
-
- fw3_set_running(ipset, &state->running_ipsets);
}
void
return;
list_for_each_entry(ipset, &state->ipsets, list)
- if (!fw3_lookup_ipset(state, ipset->name, true))
- create_ipset(ipset, state);
+ if (!hasbit(ipset->flags[0], FW3_FLAG_DELETED))
+ if (!fw3_lookup_ipset(state, ipset->name, true))
+ create_ipset(ipset, state);
fw3_pr("quit\n");
}
{
struct fw3_ipset *s, *tmp;
- list_for_each_entry_safe(s, tmp, &state->running_ipsets, running_list)
+ list_for_each_entry_safe(s, tmp, &state->ipsets, list)
{
- delbit(s->running_flags, family);
+ del(s->flags, family, family);
- if (fw3_no_family(s->running_flags))
+ if (fw3_no_family(s->flags[family == FW3_FAMILY_V6]))
{
info(" * Deleting ipset %s", s->name);
fw3_pr("flush %s\n", s->name);
fw3_pr("destroy %s\n", s->name);
-
- fw3_set_running(s, NULL);
}
}
}
if (strcmp(s->name, name))
continue;
- if (!running || s->running_list.next)
- return s;
-
- break;
+ return s;
}
return NULL;