summaryrefslogtreecommitdiff
path: root/src/pkg/syscall/zsyscall_windows_386.go
diff options
context:
space:
mode:
authorPeter Mundy <go.peter.90@gmail.com>2010-06-30 13:52:34 -0700
committerPeter Mundy <go.peter.90@gmail.com>2010-06-30 13:52:34 -0700
commitd9d5009aac5a61a08fd9e2125321197e4cf55976 (patch)
tree40bfaa22cdd826cbba2eec971e62508d2d4f529d /src/pkg/syscall/zsyscall_windows_386.go
parentd364bb8ed786ab6c4877f19f0b286ed05894f0b0 (diff)
downloadgolang-d9d5009aac5a61a08fd9e2125321197e4cf55976.tar.gz
io/ioutil.TempFile for Windows
Fixes issue 834. R=rsc, brainman CC=golang-dev http://codereview.appspot.com/1686047 Committer: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src/pkg/syscall/zsyscall_windows_386.go')
-rw-r--r--src/pkg/syscall/zsyscall_windows_386.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pkg/syscall/zsyscall_windows_386.go b/src/pkg/syscall/zsyscall_windows_386.go
index 306de3031..be5dd031c 100644
--- a/src/pkg/syscall/zsyscall_windows_386.go
+++ b/src/pkg/syscall/zsyscall_windows_386.go
@@ -40,6 +40,7 @@ var (
procGetTimeZoneInformation = getSysProcAddr(modkernel32, "GetTimeZoneInformation")
procCreateIoCompletionPort = getSysProcAddr(modkernel32, "CreateIoCompletionPort")
procGetQueuedCompletionStatus = getSysProcAddr(modkernel32, "GetQueuedCompletionStatus")
+ procGetTempPathW = getSysProcAddr(modkernel32, "GetTempPathW")
procWSAStartup = getSysProcAddr(modwsock32, "WSAStartup")
procWSACleanup = getSysProcAddr(modwsock32, "WSACleanup")
procsocket = getSysProcAddr(modwsock32, "socket")
@@ -375,6 +376,17 @@ func GetQueuedCompletionStatus(cphandle int32, qty *uint32, key *uint32, overlap
return
}
+func GetTempPath(buflen uint32, buf *uint16) (n uint32, errno int) {
+ r0, _, e1 := Syscall(procGetTempPathW, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0)
+ n = uint32(r0)
+ if n == 0 {
+ errno = int(e1)
+ } else {
+ errno = 0
+ }
+ return
+}
+
func WSAStartup(verreq uint32, data *WSAData) (sockerrno int) {
r0, _, _ := Syscall(procWSAStartup, uintptr(verreq), uintptr(unsafe.Pointer(data)), 0)
sockerrno = int(r0)