I'm trying to turn off the socket option IPV6_V6ONLY.
int no = 0;
setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, (void *)&no, sizeof(no));
Why does the above fail with errno 22 (EINVAL)?
This is on OS X. It also doesn't work when no
is 1. Setting other socket options works, for example
int yes = 1;
setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (void *)&yes, sizeof(yes));