SO_TYPE
if (getsockopt(fd, SOL_SOCKET, SO_TYPE, &type, &len) < 0)
return SO_TYPE;
case SO_TYPE:
translate(SO_TYPE);
CASERETURN(SO_TYPE);
if (getsockopt(s, SOL_SOCKET, SO_TYPE, &sock_type, &len) != 0)