Penguin
Note: You are viewing an old revision of this page. View the current version.

Address family not supported by protocol

This is an error you get when you try to connect(2) or bind(2) a socket to an address where that address doesn't make sense. For example trying to bind a socket created with PF_INET (Protocol Family Internet) to a AF_UNIX (Address Family Unix Domain Socket) address, it just doesn't make sense. Alternatively you forgot to fill in the sin_family or uin_family field in your address structure. Either way the programmer screwed up.

This can also occur if the OperatingSystem does not support a particular protocol. For example

$ ping6 ::1 ping6: socket: Address family not supported by protocol

$ strace ping6 ::1 ... socket(PF_INET6, SOCK_RAW, 58) = -1 EAFNOSUPPORT (Address family not supported by protocol) ...

In this case, the machine does not have IPv6 support, but a program tried to use it.