diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2022-04-08 13:10:19 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2022-05-13 18:56:27 +0200 |
commit | 8169ff584003c871a226719e998bb034231954d6 (patch) | |
tree | d17f5fabbcd5f2faf63dca4091ada15017e6eda7 /net/netfilter/nf_nat_masquerade.c | |
parent | 0bcfbafbcd345f285db0c3788e6359ceac6a008c (diff) | |
download | linux-8169ff584003c871a226719e998bb034231954d6.tar.gz linux-8169ff584003c871a226719e998bb034231954d6.tar.bz2 linux-8169ff584003c871a226719e998bb034231954d6.zip |
netfilter: conntrack: add nf_ct_iter_data object for nf_ct_iterate_cleanup*()
This patch adds a structure to collect all the context data that is
passed to the cleanup iterator.
struct nf_ct_iter_data {
struct net *net;
void *data;
u32 portid;
int report;
};
There is a netns field that allows to clean up conntrack entries
specifically owned by the specified netns.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/netfilter/nf_nat_masquerade.c')
-rw-r--r-- | net/netfilter/nf_nat_masquerade.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/netfilter/nf_nat_masquerade.c b/net/netfilter/nf_nat_masquerade.c index e32fac374608..1a506b0c6511 100644 --- a/net/netfilter/nf_nat_masquerade.c +++ b/net/netfilter/nf_nat_masquerade.c @@ -77,11 +77,14 @@ EXPORT_SYMBOL_GPL(nf_nat_masquerade_ipv4); static void iterate_cleanup_work(struct work_struct *work) { + struct nf_ct_iter_data iter_data = {}; struct masq_dev_work *w; w = container_of(work, struct masq_dev_work, work); - nf_ct_iterate_cleanup_net(w->net, w->iter, (void *)w, 0, 0); + iter_data.net = w->net; + iter_data.data = (void *)w; + nf_ct_iterate_cleanup_net(w->iter, &iter_data); put_net_track(w->net, &w->ns_tracker); kfree(w); |