0
我需要删除内核中的conntrack条目。有许多功能,如nf_ct_delete
和nf_ct_put
。目前我在skb->nfct
上使用了两个(在跟踪的追踪skb上的块)。它似乎一开始工作正常,但几秒钟后内核崩溃。删除内核中的conntrack条目
我当前的代码如下:
struct nf_conntrack *con = skb->nfct;
nf_conntrack_get(sub_conntrack);
//... do some stuff
nf_ct_delete((struct nf_conn *) con, 0, 0);
nf_ct_put((struct nf_conn *) con);
删除,并把语句的执行后直接,我请与conntrack -L conntrack
条目,他们都走了(如预期)。但是一分钟左右后,系统冻结。我猜conntrack启动了一些定时器,当被解雇时会崩溃。
所以我的问题是:我如何立即删除的一切为一个特定的连接?包括停止任何计时器并清理所有状态。