summaryrefslogtreecommitdiff
path: root/src/lib/net/net_darwin.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/net/net_darwin.go')
-rw-r--r--src/lib/net/net_darwin.go30
1 files changed, 16 insertions, 14 deletions
diff --git a/src/lib/net/net_darwin.go b/src/lib/net/net_darwin.go
index 1238a4cdc..2a23decc2 100644
--- a/src/lib/net/net_darwin.go
+++ b/src/lib/net/net_darwin.go
@@ -11,9 +11,9 @@ import (
"unsafe";
)
-export func IPv4ToSockaddr(p *[]byte, port int) (sa1 *syscall.Sockaddr, err *os.Error) {
+export func IPv4ToSockaddr(p []byte, port int) (sa1 *syscall.Sockaddr, err *os.Error) {
p = ToIPv4(p);
- if p == nil || port < 0 || port > 0xFFFF {
+ if len(p) == 0 || port < 0 || port > 0xFFFF {
return nil, os.EINVAL
}
sa := new(syscall.SockaddrInet4);
@@ -27,9 +27,9 @@ export func IPv4ToSockaddr(p *[]byte, port int) (sa1 *syscall.Sockaddr, err *os.
return unsafe.pointer(sa).(*syscall.Sockaddr), nil
}
-export func IPv6ToSockaddr(p *[]byte, port int) (sa1 *syscall.Sockaddr, err *os.Error) {
+export func IPv6ToSockaddr(p []byte, port int) (sa1 *syscall.Sockaddr, err *os.Error) {
p = ToIPv6(p);
- if p == nil || port < 0 || port > 0xFFFF {
+ if len(p) == 0 || port < 0 || port > 0xFFFF {
return nil, os.EINVAL
}
sa := new(syscall.SockaddrInet6);
@@ -43,26 +43,28 @@ export func IPv6ToSockaddr(p *[]byte, port int) (sa1 *syscall.Sockaddr, err *os.
return unsafe.pointer(sa).(*syscall.Sockaddr), nil
}
-export func SockaddrToIP(sa1 *syscall.Sockaddr) (p *[]byte, port int, err *os.Error) {
+var NIL []byte // TODO(rsc)
+
+export func SockaddrToIP(sa1 *syscall.Sockaddr) (p []byte, port int, err *os.Error) {
switch sa1.family {
case syscall.AF_INET:
sa := unsafe.pointer(sa1).(*syscall.SockaddrInet4);
- a := ToIPv6(&sa.addr);
- if a == nil {
- return nil, 0, os.EINVAL
+ a := ToIPv6(sa.addr);
+ if len(a) == 0 {
+ return NIL, 0, os.EINVAL
}
return a, int(sa.port[0])<<8 + int(sa.port[1]), nil;
case syscall.AF_INET6:
sa := unsafe.pointer(sa1).(*syscall.SockaddrInet6);
- a := ToIPv6(&sa.addr);
- if a == nil {
- return nil, 0, os.EINVAL
+ a := ToIPv6(sa.addr);
+ if len(a) == 0 {
+ return NIL, 0, os.EINVAL
}
- return a, int(sa.port[0])<<8 + int(sa.port[1]), nil;
+ return NIL, int(sa.port[0])<<8 + int(sa.port[1]), nil;
default:
- return nil, 0, os.EINVAL
+ return NIL, 0, os.EINVAL
}
- return nil, 0, nil // not reached
+ return NIL, 0, nil // not reached
}
export func ListenBacklog() int64 {