diff options
author | Patrick McHardy <kaber@trash.net> | 2007-07-07 22:35:56 -0700 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-07-10 22:18:02 -0700 |
commit | b560580a13b180bc1e3cad7ffbc93388cc39be5d (patch) | |
tree | 9ad6fd7a93c75ef4776239b4f43bde27737aa04b /net/netfilter/nf_conntrack_helper.c | |
parent | 31f15875c5ad98a13b528aaf19c839e22b43dc9a (diff) | |
download | kernel_samsung_espresso10-b560580a13b180bc1e3cad7ffbc93388cc39be5d.zip kernel_samsung_espresso10-b560580a13b180bc1e3cad7ffbc93388cc39be5d.tar.gz kernel_samsung_espresso10-b560580a13b180bc1e3cad7ffbc93388cc39be5d.tar.bz2 |
[NETFILTER]: nf_conntrack_expect: maintain per conntrack expectation list
This patch brings back the per-conntrack expectation list that was
removed around 2.6.10 to avoid walking all expectations on expectation
eviction and conntrack destruction.
As these were the last users of the global expectation list, this patch
also kills that.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netfilter/nf_conntrack_helper.c')
-rw-r--r-- | net/netfilter/nf_conntrack_helper.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/net/netfilter/nf_conntrack_helper.c b/net/netfilter/nf_conntrack_helper.c index cc8ae74..66c209d 100644 --- a/net/netfilter/nf_conntrack_helper.c +++ b/net/netfilter/nf_conntrack_helper.c @@ -87,6 +87,19 @@ __nf_conntrack_helper_find_byname(const char *name) } EXPORT_SYMBOL_GPL(__nf_conntrack_helper_find_byname); +struct nf_conn_help *nf_ct_helper_ext_add(struct nf_conn *ct, gfp_t gfp) +{ + struct nf_conn_help *help; + + help = nf_ct_ext_add(ct, NF_CT_EXT_HELPER, gfp); + if (help) + INIT_HLIST_HEAD(&help->expectations); + else + pr_debug("failed to add helper extension area"); + return help; +} +EXPORT_SYMBOL_GPL(nf_ct_helper_ext_add); + static inline int unhelp(struct nf_conntrack_tuple_hash *i, const struct nf_conntrack_helper *me) { |