开发者社区> 问答> 正文

为什么netfilter.h中缺少nf_hookfn,nf_hook_ops等的typedef?

0

我正在尝试编写一个netfilter模块。我的第一次尝试。

我的Makefile是:

obj-m += someModule.o
all:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

我得到编译时错误清楚地表明typedefs的structs nf_hookfn,nf_hook_ops等是不是采摘或错误采摘。

我知道钩子函数的参数列表在以后的内核中已更改。无论哪种方式,我都根本看不到typedefs我需要的任何内容/usr/include/linux/netfilter.h。

我尝试了什么?

展开
收起
祖安文状元 2020-01-07 14:23:43 747 0
1 条回答
写回答
取消 提交回答
  • 如果您的内核模块包括from的标头/usr/include/linux,那确实确实出了问题:其中的文件/usr/include/linux供用户态应用程序使用(请参阅/ usr / include / linux和linux内核源代码中的include文件夹有什么区别?),而不是内核模块。

    相反,您的模块应在内核源代码中包含头文件。

    对于它的价值,这似乎是我系统上的默认值。如果我编译此非内核模块:

    2020-01-07 14:23:48
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载