关闭

netinet/in.h linux/in.h 问题

208人阅读 评论(0) 收藏 举报

在用户空间用编程的时候需要处理ipv6,其中用到了struct ipv6hdr这一结构体

想当然直接包含了<linux/ipv6.h>结果编译出现错误,重复定义

发现问题在于项目中用到了libnetfilter_conntrack.h 连接跟踪头文件,

该文件中包含了<netinet/in.h>,而ipv6.h中包含了<linux/in.h>两个文件基本定义了一样的东西

按网上说的 linux下的是内核用的 netinet是用户空间用的,所以在用户空间我调用<netinet/ipv6.h>

该文件中包含是是netinet.h所以不会产生任何问题。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1185次
    • 积分:89
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档