之前在Mac下下载了Linux 2.6.32,并放到了自己的git仓库。今天在Ubuntu通过git下载到本地,结果编译报错。提示找不到ipt_ECN.h。
对比原始的Linux 2.6.32发现,原版的Linux同时存在ipt_ecn.h, ipt_ECN.h。而我的版本里,只存在ipt_ecn.h。
因为Mac下是大小写不敏感的。从官网下载的Linux2.6.32 tar包,解压后,这类文件全部丢失
从原版Linux拷贝该文件,解决。
同样存在问题的有
include/linux/netfilter_ipv4/ipt_ecn.h
include/linux/netfilter/xt_connmark.h
include/linux/netfilter/xt_mark.h
include/linux/netfilter/xt_DSCP.h
include/linux/netfilter/xt_TCPMSS.h
include/linux/netfilter/xt_RATEEST.h
net/ipv4/netfilter/ipt_ecn.c
net/netfilter/xt_CONNMARK.c
net/netfilter/xt_MARK.c
net/netfilter/xt_DSCP.c
net/netfilter/xt_TCPMSS.c
net/netfilter/xt_RATEEST.c
net/netfilter/xt_HL.c
include/linux/netfilter_ipv4/ipt_ttl.h
include/linux/netfilter_ipv6/ip6t_HL.h