我正在尝试关闭套接字选项IPV6_V6ONLY.
int no = 0;
setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, (void *)&no, sizeof(no));
Run Code Online (Sandbox Code Playgroud)
为什么上面的错误与errno 22(EINVAL)失败?
这是在OS X上.它在no
1 时也不起作用.例如,设置其他套接字选项有效
int yes = 1;
setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (void *)&yes, sizeof(yes));
Run Code Online (Sandbox Code Playgroud)
小智 5
它看起来像*BSD派生的操作系统不允许设置也不清除此选项.我在FreeBSD 8.X上看到了相同的行为.套接字是100%AF_INET6.
归档时间: |
|
查看次数: |
8084 次 |
最近记录: |