]> git.ipfire.org Git - thirdparty/libnftnl.git/commitdiff
set_elem: nftnl_set_elems_nlmsg_build_payload_iter()
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 5 Dec 2016 22:00:45 +0000 (23:00 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 5 Dec 2016 22:01:53 +0000 (23:01 +0100)
Similar to a24e4b21ee33 ("set_elem: don't add NFTA_SET_ELEM_LIST_ELEMENTS
attribute if set is empty"). This is required by the set flush support.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/set_elem.c

index 4d2b4f6074b7c729d66f2e8ba1b705194309cbc6..083c597e2f8e7c4b39c4b8cd5ffc307a4b61775f 100644 (file)
@@ -813,6 +813,10 @@ int nftnl_set_elems_nlmsg_build_payload_iter(struct nlmsghdr *nlh,
 
        nftnl_set_elem_nlmsg_build_def(nlh, iter->set);
 
+       /* This set is empty, don't add an empty list element nest. */
+       if (list_empty(&iter->set->element_list))
+               return ret;
+
        nest1 = mnl_attr_nest_start(nlh, NFTA_SET_ELEM_LIST_ELEMENTS);
        elem = nftnl_set_elems_iter_next(iter);
        while (elem != NULL) {