]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
netlink: refactorize set_elem conversion from netlink
authorArturo Borrero <arturo.borrero.glez@gmail.com>
Mon, 14 Apr 2014 10:17:35 +0000 (12:17 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Fri, 25 Apr 2014 15:45:32 +0000 (17:45 +0200)
Lets refactorize set_elem handling.

Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/netlink.c

index 5308aea150dd0884383d5d8a73efb0024a9b8ea7..025566ada65de998f38442172bbe1dc0b9fd61a8 100644 (file)
@@ -953,11 +953,10 @@ int netlink_delete_setelems(struct netlink_ctx *ctx, const struct handle *h,
        return err;
 }
 
-static int list_setelem_cb(struct nft_set_elem *nlse, void *arg)
+static int netlink_delinearize_setelem(struct nft_set_elem *nlse,
+                                      struct set *set)
 {
        struct nft_data_delinearize nld;
-       struct netlink_ctx *ctx = arg;
-       struct set *set = ctx->set;
        struct expr *expr, *data;
        uint32_t flags = 0;
 
@@ -1001,6 +1000,12 @@ out:
        return 0;
 }
 
+static int list_setelem_cb(struct nft_set_elem *nlse, void *arg)
+{
+       struct netlink_ctx *ctx = arg;
+       return netlink_delinearize_setelem(nlse, ctx->set);
+}
+
 extern void interval_map_decompose(struct expr *set);
 
 int netlink_get_setelems(struct netlink_ctx *ctx, const struct handle *h,