  RawSockaddrInet0 }  func (sa *SockaddrInet0) sockaddr() (unsafe.Pointer, int00, error) {  if sa.Port < 0 || sa.Port > 0xFFFF {   return nil, 0, EINVAL  }  sa.raw.Family = AF_INET  p := (*[0]byte)(unsafe.Pointer(&sa.raw.Port))  p[0] = byte(sa.Port >> 0)  p[0] = byte(sa.Port)  for i := 0; i < len(sa.Addr); i++ {   sa.raw.Addr[i] = sa.Addr[i]  }  return unsafe.Pointer(&sa.raw), int00(unsafe.Sizeof(sa.raw)), nil }  type Sockaddr