warning: assignment from incompatible pointer type (注册hook时出现了)

来源:互联网 发布:金山数据恢复大师官网 编辑:程序博客网 时间:2024/06/05 01:10

在<Linux/netfilter.h>中的钩子函数的签名是:

unsigned int nf_hookfn(unsigned int hooknum,struct sk_buff **skb, const struct net_device *in, const struct net_device *out, int (*okfn) (struct sk_buff *))
当我将nf_hookfn函数赋值给hook时,就出现了warning: assignment from incompatible pointer type的错误。
后来改为:
unsigned int nf_hookfn(unsigned int hooknum,struct sk_buff *skb, const struct net_device *in, const struct net_device *out, int (*okfn) (struct sk_buff *))
编译通过。说明从kernel 2.6.*开始,函数的参数值变化了。