diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2015-10-05 16:51:03 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2015-10-12 16:54:45 +0200 |
commit | 403d89ad9cc076db44c76ab75c7629497d8ddbb2 (patch) | |
tree | ab8443a59b8b3f0f1fcac3843357ebedb73cf865 | |
parent | a29a9a585b2840a205f085a34dfd65c75e86f7c3 (diff) | |
download | op-kernel-dev-403d89ad9cc076db44c76ab75c7629497d8ddbb2.zip op-kernel-dev-403d89ad9cc076db44c76ab75c7629497d8ddbb2.tar.gz |
netfilter: xt_CT: don't put back reference to timeout policy object
On success, this shouldn't put back the timeout policy object, otherwise
we may have module refcount overflow and we allow deletion of timeout
that are still in use.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r-- | net/netfilter/xt_CT.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/netfilter/xt_CT.c b/net/netfilter/xt_CT.c index faf32d8..a03924c 100644 --- a/net/netfilter/xt_CT.c +++ b/net/netfilter/xt_CT.c @@ -171,6 +171,9 @@ xt_ct_set_timeout(struct nf_conn *ct, const struct xt_tgchk_param *par, if (timeout_ext == NULL) ret = -ENOMEM; + rcu_read_unlock(); + return ret; + err_put_timeout: __xt_ct_tg_timeout_put(timeout); out: |