请查看下面的代码。
我得到了错误“/usr/include/linux/sysctl.h:40:2: error: unknown type name ‘size_t’”。
在线搜索,唯一的建议是确保您在代码中包含了stddef.h,正如下面所示。除此之外似乎没有可用的解决方案,我已经尝试了这个修复方法,所以目前不知道如何继续前进。
还请注意,这段代码不太好看,但这不是本主题的主要问题。我收到的错误似乎不是由我的代码错误引起的,但我可能是错的。
在线搜索,唯一的建议是确保您在代码中包含了stddef.h,正如下面所示。除此之外似乎没有可用的解决方案,我已经尝试了这个修复方法,所以目前不知道如何继续前进。
还请注意,这段代码不太好看,但这不是本主题的主要问题。我收到的错误似乎不是由我的代码错误引起的,但我可能是错的。
#include <linux/netfilter_ipv4.h>
#include <linux/netfilter.h>
#include <linux/ip.h>
#include <linux/tcp.h>
#include <sys/types.h>
#include <linux/module.h>
#include <stddef.h>
struct nf_hook_ops{
struct list_head *list;
nf_hookfn *hook;
struct module *owner;
u_int8_t pf;
unsigned int hooknum;
int priority; /* Hooks are ordered in ascending priority. */
};
int nf_register_hook(struct nf_hook_ops *reg);
void nf_unregister_hook(struct nf_hook_ops *reg);
struct nf_hook_ops nfho = {
nfho.hook = hook_func_in,
nfho.hooknum = NF_INET_LOCAL_IN,
nfho.pf = PF_INE,
nfho.priority = NF_IP_PRI_FIRST
};
nf_register_hook(&nfho); // Register the hook
size_t
。尝试在其他头文件之前包含<stddef.h>
。 - machine_1