]> asedeno.scripts.mit.edu Git - linux.git/blob - include/net/netfilter/nf_conntrack_count.h
netfilter: nf_conncount: Fix garbage collection with zones
[linux.git] / include / net / netfilter / nf_conntrack_count.h
1 #ifndef _NF_CONNTRACK_COUNT_H
2 #define _NF_CONNTRACK_COUNT_H
3
4 struct nf_conncount_data;
5
6 struct nf_conncount_data *nf_conncount_init(struct net *net, unsigned int family,
7                                             unsigned int keylen);
8 void nf_conncount_destroy(struct net *net, unsigned int family,
9                           struct nf_conncount_data *data);
10
11 unsigned int nf_conncount_count(struct net *net,
12                                 struct nf_conncount_data *data,
13                                 const u32 *key,
14                                 const struct nf_conntrack_tuple *tuple,
15                                 const struct nf_conntrack_zone *zone);
16
17 unsigned int nf_conncount_lookup(struct net *net, struct hlist_head *head,
18                                  const struct nf_conntrack_tuple *tuple,
19                                  const struct nf_conntrack_zone *zone,
20                                  bool *addit);
21
22 bool nf_conncount_add(struct hlist_head *head,
23                       const struct nf_conntrack_tuple *tuple,
24                       const struct nf_conntrack_zone *zone);
25
26 void nf_conncount_cache_free(struct hlist_head *hhead);
27
28 #endif