1 // Copyright 2015 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
6 // +build aix darwin dragonfly freebsd hurd netbsd openbsd
11 #include <sys/types.h>
12 #include <sys/socket.h>
14 #include <netinet/in.h>
22 func cgoSockaddrInet4(ip IP) *syscall.RawSockaddr {
23 sa := syscall.RawSockaddrInet4{Len: syscall.SizeofSockaddrInet4, Family: syscall.AF_INET}
25 return (*syscall.RawSockaddr)(unsafe.Pointer(&sa))
28 func cgoSockaddrInet6(ip IP, zone int) *syscall.RawSockaddr {
29 sa := syscall.RawSockaddrInet6{Len: syscall.SizeofSockaddrInet6, Family: syscall.AF_INET6, Scope_id: uint32(zone)}
31 return (*syscall.RawSockaddr)(unsafe.Pointer(&sa))