summaryrefslogtreecommitdiffstats
path: root/src/netlink.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2008-12-08 11:07:51 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2008-12-08 11:07:51 +0100
commit8663becfe12801a4b5a96137a0db26a8871948a3 (patch)
treebb06a4a6d25b9fc892a900afa0b7697029546296 /src/netlink.c
parent528b304b587dc5ad5b147d53eeca60cb9df8c087 (diff)
netlink: unset ATTR_HELPER_NAME to avoid EBUSY in nl_update_conntrack()
This patch unsets the ATTR_HELPER_NAME attributes, otherwise we hit EBUSY for related conntrack entries while resetting the timers. Signed-off: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/netlink.c')
-rw-r--r--src/netlink.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/netlink.c b/src/netlink.c
index 89c85d7..31cee61 100644
--- a/src/netlink.c
+++ b/src/netlink.c
@@ -239,6 +239,9 @@ int nl_update_conntrack(const struct nf_conntrack *orig)
status &= ~IPS_NAT_MASK;
nfct_set_attr_u32(ct, ATTR_STATUS, status);
}
+ /* we have to unset the helper to avoid EBUSY in reset timers */
+ if (nfct_attr_is_set(ct, ATTR_HELPER_NAME))
+ nfct_attr_unset(ct, ATTR_HELPER_NAME);
/* we hit error if we try to update the master conntrack */
if (ct_is_related(ct)) {