diff options
author | Russ Cox <rsc@golang.org> | 2008-12-09 10:57:55 -0800 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2008-12-09 10:57:55 -0800 |
commit | 2a6a6a917ab745ffc5c916213e8339f642212b80 (patch) | |
tree | 5a5c1565a284cc6f82528756b98d3d08b97af803 /src/lib/syscall/socket_linux.go | |
parent | 677e5c5780e88b5f75df2340db6d1faa164ab6cc (diff) | |
download | golang-2a6a6a917ab745ffc5c916213e8339f642212b80.tar.gz |
replace assembly casts with unsafe.pointer
R=r
DELTA=178 (18 added, 101 deleted, 59 changed)
OCL=20822
CL=20826
Diffstat (limited to 'src/lib/syscall/socket_linux.go')
-rw-r--r-- | src/lib/syscall/socket_linux.go | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/lib/syscall/socket_linux.go b/src/lib/syscall/socket_linux.go index 69a05308c..614c6bcb2 100644 --- a/src/lib/syscall/socket_linux.go +++ b/src/lib/syscall/socket_linux.go @@ -7,7 +7,10 @@ // DO NOT USE DIRECTLY. package syscall -import "syscall" +import ( + "syscall"; + "unsafe"; +) export func SockaddrToSockaddrInet4(s *Sockaddr) *SockaddrInet4; export func SockaddrToSockaddrInet6(s *Sockaddr) *SockaddrInet6; @@ -32,12 +35,12 @@ export func socket(domain, proto, typ int64) (ret int64, err int64) { } export func connect(fd int64, sa *Sockaddr) (ret int64, err int64) { - r1, r2, e := Syscall(SYS_CONNECT, fd, SockaddrPtr(sa), Len(sa)); + r1, r2, e := Syscall(SYS_CONNECT, fd, int64(uintptr(unsafe.pointer(sa))), Len(sa)); return r1, e } export func bind(fd int64, sa *Sockaddr) (ret int64, err int64) { - r1, r2, e := Syscall(SYS_BIND, fd, SockaddrPtr(sa), Len(sa)); + r1, r2, e := Syscall(SYS_BIND, fd, int64(uintptr(unsafe.pointer(sa))), Len(sa)); return r1, e } @@ -48,7 +51,7 @@ export func listen(fd, n int64) (ret int64, err int64) { export func accept(fd int64, sa *Sockaddr) (ret int64, err int64) { var n int32 = SizeofSockaddr; - r1, r2, e := Syscall(SYS_ACCEPT, fd, SockaddrPtr(sa), Int32Ptr(&n)); + r1, r2, e := Syscall(SYS_ACCEPT, fd, int64(uintptr(unsafe.pointer(sa))), int64(uintptr(unsafe.pointer(&n)))); return r1, e } @@ -62,7 +65,7 @@ export func setsockopt(fd, level, opt, valueptr, length int64) (ret int64, err i export func setsockopt_int(fd, level, opt int64, value int) int64 { n := int32(opt); - r1, e := setsockopt(fd, level, opt, Int32Ptr(&n), 4); + r1, e := setsockopt(fd, level, opt, int64(uintptr(unsafe.pointer(&n))), 4); return e } @@ -71,7 +74,7 @@ export func setsockopt_tv(fd, level, opt, nsec int64) int64 { nsec += 999; tv.sec = int64(nsec/1000000000); tv.usec = uint64(nsec%1000000000); - r1, e := setsockopt(fd, level, opt, TimevalPtr(&tv), 4); + r1, e := setsockopt(fd, level, opt, int64(uintptr(unsafe.pointer(&tv))), 4); return e } @@ -84,7 +87,7 @@ export func setsockopt_linger(fd, level, opt int64, sec int) int64 { l.yes = 0; l.sec = 0 } - r1, err := setsockopt(fd, level, opt, LingerPtr(&l), 8); + r1, err := setsockopt(fd, level, opt, int64(uintptr(unsafe.pointer(&l))), 8); return err } @@ -101,7 +104,7 @@ export func epoll_create(size int64) (ret int64, errno int64) { } export func epoll_ctl(epfd, op, fd int64, ev *EpollEvent) int64 { - r1, r2, err := syscall.Syscall6(SYS_EPOLL_CTL, epfd, op, fd, EpollEventPtr(ev), 0, 0); + r1, r2, err := syscall.Syscall6(SYS_EPOLL_CTL, epfd, op, fd, int64(uintptr(unsafe.pointer(ev))), 0, 0); return err } @@ -109,7 +112,7 @@ export func epoll_wait(epfd int64, ev *[]EpollEvent, msec int64) (ret int64, err var evptr, nev int64; if ev != nil && len(ev) > 0 { nev = int64(len(ev)); - evptr = EpollEventPtr(&ev[0]) + evptr = int64(uintptr(unsafe.pointer(&ev[0]))) } r1, r2, err1 := syscall.Syscall6(SYS_EPOLL_WAIT, epfd, evptr, nev, msec, 0, 0); return r1, err1 |