SOCK_TYPE_MASK
long type = val & SOCK_TYPE_MASK;
if ((type & ~SOCK_TYPE_MASK) != 0) {
type = type_w_flags & SOCK_TYPE_MASK;
type_w_flags &= ~SOCK_TYPE_MASK;