From 50b3c64344fc76aeeac3f1e56f004743b1e52846 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Thu, 10 May 2012 11:12:24 +0200 Subject: netlink: add netlink_dump_control structure for netlink_dump_start() Backport of Pablo's patch to the ipset package. --- kernel/net/netfilter/ipset/ip_set_core.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'kernel/net/netfilter/ipset/ip_set_core.c') diff --git a/kernel/net/netfilter/ipset/ip_set_core.c b/kernel/net/netfilter/ipset/ip_set_core.c index 51ceea5..27f35ac 100644 --- a/kernel/net/netfilter/ipset/ip_set_core.c +++ b/kernel/net/netfilter/ipset/ip_set_core.c @@ -1172,12 +1172,22 @@ ip_set_dump(struct sock *ctnl, struct sk_buff *skb, if (unlikely(protocol_failed(attr))) return -IPSET_ERR_PROTOCOL; +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 1, 0) return netlink_dump_start(ctnl, skb, nlh, ip_set_dump_start, -#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 1, 0) ip_set_dump_done); -#else +#elif LINUX_VERSION_CODE < KERNEL_VERSION(3, 4, 0) + return netlink_dump_start(ctnl, skb, nlh, + ip_set_dump_start, ip_set_dump_done, 0); +#else + { + struct netlink_dump_control c = { + .dump = ip_set_dump_start, + .done = ip_set_dump_done, + }; + return netlink_dump_start(ctnl, skb, nlh, &c); + } #endif } -- cgit v1.2.3