标签: c linux sockets tcp userspace
我正在寻找一种简单的方法来测试内核是否支持Linux上的C / C ++中的IPv6。 是否足以检查socket()调用是否失败并且errno是否设置为EINVAL?
答案 0 :(得分:2)
确实,请阅读ipv6(7):对socket(7)例程的调用,特别是socket(2)和其他例程,例如bind(2)等等......可能会失败(无论如何,总是处理此类失败)。
您也可以使用proc(5),例如阅读/proc/net/if_inet6或/proc/net/sockstat6(我相信如果ipv6不受支持,则不会存在。)
/proc/net/if_inet6
/proc/net/sockstat6
ipv6