summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Bernat <bernat@luffy.cx>2012-08-02 05:33:56 +0000
committerPablo Neira Ayuso <pablo@netfilter.org>2012-08-03 10:58:45 +0200
commit18bfa4bfb3bb875c36756272bb653c33e338c776 (patch)
treee6f9db14053c9491973d04b2fcccfadce645e3ea
parentf9ad41077c473884f33c6677f81119614d5a8eb2 (diff)
conntrackd: don't resync expectations if such sync has been disabled
conntrackd was segfaulting with `ExpectationSync` set to `Off` and PollSecs (polling mode) in use. Signed-off-by: Vincent Bernat <bernat@luffy.cx> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r--src/ctnl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/ctnl.c b/src/ctnl.c
index 107cd5d..bb54727 100644
--- a/src/ctnl.c
+++ b/src/ctnl.c
@@ -164,7 +164,9 @@ static void do_polling_alarm(struct alarm_block *a, void *data)
STATE(mode)->internal->exp.purge();
nl_send_resync(STATE(resync));
- nl_send_expect_resync(STATE(resync));
+ if (CONFIG(flags) & CTD_EXPECT)
+ nl_send_expect_resync(STATE(resync));
+
add_alarm(&STATE(polling_alarm), CONFIG(poll_kernel_secs), 0);
}