summaryrefslogtreecommitdiff
path: root/src/pkg/syscall/syscall_bsd.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-05-19 17:47:57 -0700
committerRuss Cox <rsc@golang.org>2010-05-19 17:47:57 -0700
commit94b3292622846b33dafe15d32d2b20cd2ce1fbef (patch)
tree2fd3111eff2c99cd45e4a5dd459ee4adbed688dc /src/pkg/syscall/syscall_bsd.go
parentc94d037cd17b64739dd53ea17d170d100965aa00 (diff)
downloadgolang-94b3292622846b33dafe15d32d2b20cd2ce1fbef.tar.gz
syscall: add Utimes on Darwin/FreeBSD, add Futimes everywhere
Needed for CL 1103041 and beyond. R=adg, bradfitzpatrick CC=bradfitz, golang-dev http://codereview.appspot.com/1172042
Diffstat (limited to 'src/pkg/syscall/syscall_bsd.go')
-rw-r--r--src/pkg/syscall/syscall_bsd.go22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/pkg/syscall/syscall_bsd.go b/src/pkg/syscall/syscall_bsd.go
index cb7264863..332afa4bf 100644
--- a/src/pkg/syscall/syscall_bsd.go
+++ b/src/pkg/syscall/syscall_bsd.go
@@ -451,9 +451,27 @@ func SysctlUint32(name string) (value uint32, errno int) {
return *(*uint32)(unsafe.Pointer(&buf[0])), 0
}
+//sys utimes(path string, timeval *[2]Timeval) (errno int)
+func Utimes(path string, tv []Timeval) (errno int) {
+ if len(tv) != 2 {
+ return EINVAL
+ }
+ return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
+}
+
+//sys futimes(fd int, timeval *[2]Timeval) (errno int)
+func Futimes(fd int, tv []Timeval) (errno int) {
+ if len(tv) != 2 {
+ return EINVAL
+ }
+ return futimes(fd, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
+}
+
+//sys fcntl(fd int, cmd int, arg int) (val int, errno int)
+
+
// TODO: wrap
// Acct(name nil-string) (errno int)
-// Futimes(fd int, timeval *Timeval) (errno int) // Pointer to 2 timevals!
// Gethostuuid(uuid *byte, timeout *Timespec) (errno int)
// Getsockopt(s int, level int, name int, val *byte, vallen *int) (errno int)
// Madvise(addr *byte, len int, behav int) (errno int)
@@ -463,5 +481,3 @@ func SysctlUint32(name string) (value uint32, errno int) {
// Ptrace(req int, pid int, addr uintptr, data int) (ret uintptr, errno int)
// Recvmsg(s int, msg *Msghdr, flags int) (n int, errno int)
// Sendmsg(s int, msg *Msghdr, flags int) (n int, errno int)
-// Utimes(path string, timeval *Timeval) (errno int) // Pointer to 2 timevals!
-//sys fcntl(fd int, cmd int, arg int) (val int, errno int)