如果内核支持IPv6,如何从用户空间进行测试?

时间:2015-01-22 20:11:58

标签: c linux sockets tcp userspace

我正在寻找一种简单的方法来测试内核是否支持Linux上的C / C ++中的IPv6。 是否足以检查socket()调用是否失败并且errno是否设置为EINVAL?

1 个答案:

答案 0 :(得分:2)

确实,请阅读ipv6(7):对socket(7)例程的调用,特别是socket(2)和其他例程,例如bind(2)等等......可能会失败(无论如何,总是处理此类失败)。

您也可以使用proc(5),例如阅读/proc/net/if_inet6/proc/net/sockstat6(我相信如果ipv6不受支持,则不会存在。)