diff options
author | Joel Sing <jsing@google.com> | 2011-12-22 23:42:43 +1100 |
---|---|---|
committer | Joel Sing <jsing@google.com> | 2011-12-22 23:42:43 +1100 |
commit | d86ddebd051d29d5710ac5f7bf17b99b47fbca50 (patch) | |
tree | 045c8e6c755552e7367c43c369cf65097dff0f7e | |
parent | 788bcdadd24c3e7608adf52fb3c9727cebbd2346 (diff) | |
download | go-d86ddebd051d29d5710ac5f7bf17b99b47fbca50.tar.gz |
syscall: make getdirentries work on netbsd
R=golang-dev, mikioh.mikioh
CC=golang-dev
http://codereview.appspot.com/5504068
-rw-r--r-- | src/pkg/syscall/syscall_netbsd.go | 9 | ||||
-rw-r--r-- | src/pkg/syscall/zsyscall_netbsd_386.go | 17 | ||||
-rw-r--r-- | src/pkg/syscall/zsyscall_netbsd_amd64.go | 17 | ||||
-rw-r--r-- | src/pkg/syscall/ztypes_netbsd_386.go | 6 | ||||
-rw-r--r-- | src/pkg/syscall/ztypes_netbsd_amd64.go | 6 |
5 files changed, 44 insertions, 11 deletions
diff --git a/src/pkg/syscall/syscall_netbsd.go b/src/pkg/syscall/syscall_netbsd.go index eb1a78a11..f122c6224 100644 --- a/src/pkg/syscall/syscall_netbsd.go +++ b/src/pkg/syscall/syscall_netbsd.go @@ -74,13 +74,13 @@ func Pipe(p []int) (err error) { return } -// TODO -func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { - return -1, ENOSYS +//sys getdents(fd int, buf []byte) (n int, err error) +func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { + return getdents(fd, buf) } // TODO -func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { +func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { return -1, ENOSYS } @@ -176,7 +176,6 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { // __fhstatvfs140 // __fstat30 // __getcwd -// __getdents30 // __getfh30 // __getlogin // __lstat30 diff --git a/src/pkg/syscall/zsyscall_netbsd_386.go b/src/pkg/syscall/zsyscall_netbsd_386.go index 6520a7fe7..61fb8b5b4 100644 --- a/src/pkg/syscall/zsyscall_netbsd_386.go +++ b/src/pkg/syscall/zsyscall_netbsd_386.go @@ -263,6 +263,23 @@ func pipe(p *[2]_C_int) (err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func getdents(fd int, buf []byte) (n int, err error) { + var _p0 unsafe.Pointer + if len(buf) > 0 { + _p0 = unsafe.Pointer(&buf[0]) + } else { + _p0 = unsafe.Pointer(&_zero) + } + r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) + n = int(r0) + if e1 != 0 { + err = e1 + } + return +} + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Access(path string, mode uint32) (err error) { _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(StringBytePtr(path))), uintptr(mode), 0) if e1 != 0 { diff --git a/src/pkg/syscall/zsyscall_netbsd_amd64.go b/src/pkg/syscall/zsyscall_netbsd_amd64.go index 94fbc83be..e665aa009 100644 --- a/src/pkg/syscall/zsyscall_netbsd_amd64.go +++ b/src/pkg/syscall/zsyscall_netbsd_amd64.go @@ -263,6 +263,23 @@ func pipe(p *[2]_C_int) (err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func getdents(fd int, buf []byte) (n int, err error) { + var _p0 unsafe.Pointer + if len(buf) > 0 { + _p0 = unsafe.Pointer(&buf[0]) + } else { + _p0 = unsafe.Pointer(&_zero) + } + r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) + n = int(r0) + if e1 != 0 { + err = e1 + } + return +} + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Access(path string, mode uint32) (err error) { _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(StringBytePtr(path))), uintptr(mode), 0) if e1 != 0 { diff --git a/src/pkg/syscall/ztypes_netbsd_386.go b/src/pkg/syscall/ztypes_netbsd_386.go index 04e7bad67..ef9f33aeb 100644 --- a/src/pkg/syscall/ztypes_netbsd_386.go +++ b/src/pkg/syscall/ztypes_netbsd_386.go @@ -127,11 +127,11 @@ type Flock_t struct { } type Dirent struct { - Fileno uint32 + Fileno uint64 Reclen uint16 + Namlen uint16 Type uint8 - Namlen uint8 - Name [256]int8 + Name [512]int8 } type Fsid struct { diff --git a/src/pkg/syscall/ztypes_netbsd_amd64.go b/src/pkg/syscall/ztypes_netbsd_amd64.go index 1aabee5d4..3979d54de 100644 --- a/src/pkg/syscall/ztypes_netbsd_amd64.go +++ b/src/pkg/syscall/ztypes_netbsd_amd64.go @@ -130,11 +130,11 @@ type Flock_t struct { } type Dirent struct { - Fileno uint32 + Fileno uint64 Reclen uint16 + Namlen uint16 Type uint8 - Namlen uint8 - Name [256]int8 + Name [512]int8 } type Fsid struct { |