Left: | ||
Right: |
LEFT | RIGHT |
---|---|
(no file at all) | |
1 // Copyright 2009 The Go Authors. All rights reserved. | 1 // Copyright 2009 The Go Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style | 2 // Use of this source code is governed by a BSD-style |
3 // license that can be found in the LICENSE file. | 3 // license that can be found in the LICENSE file. |
4 | 4 |
5 // Windows system calls. | 5 // Windows system calls. |
6 | 6 |
7 package syscall | 7 package syscall |
8 | 8 |
9 import ( | 9 import ( |
10 errorspkg "errors" | 10 errorspkg "errors" |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
114 | 114 |
115 // windows api calls | 115 // windows api calls |
116 | 116 |
117 //sys GetLastError() (lasterr error) | 117 //sys GetLastError() (lasterr error) |
118 //sys LoadLibrary(libname string) (handle Handle, err error) = LoadLibraryW | 118 //sys LoadLibrary(libname string) (handle Handle, err error) = LoadLibraryW |
119 //sys FreeLibrary(handle Handle) (err error) | 119 //sys FreeLibrary(handle Handle) (err error) |
120 //sys GetProcAddress(module Handle, procname string) (proc uintptr, err error) | 120 //sys GetProcAddress(module Handle, procname string) (proc uintptr, err error) |
121 //sys GetVersion() (ver uint32, err error) | 121 //sys GetVersion() (ver uint32, err error) |
122 //sys FormatMessage(flags uint32, msgsrc uint32, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) = FormatMessageW | 122 //sys FormatMessage(flags uint32, msgsrc uint32, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) = FormatMessageW |
123 //sys ExitProcess(exitcode uint32) | 123 //sys ExitProcess(exitcode uint32) |
124 //sys» CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttribu tes, createmode uint32, attrs uint32, templatefile int32) (handle Handle, err er ror) [failretval==InvalidHandle] = CreateFileW | 124 //sys» CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttribu tes, createmode uint32, attrs uint32, templatefile Handle) (handle Handle, err e rror) [failretval==InvalidHandle] = CreateFileW |
minux1
2014/04/27 20:13:59
you can't change this, it will break Go 1 API guar
| |
125 //sys ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped ) (err error) | 125 //sys ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped ) (err error) |
126 //sys WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlappe d) (err error) | 126 //sys WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlappe d) (err error) |
127 //sys SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whe nce uint32) (newlowoffset uint32, err error) [failretval==0xffffffff] | 127 //sys SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whe nce uint32) (newlowoffset uint32, err error) [failretval==0xffffffff] |
128 //sys CloseHandle(handle Handle) (err error) | 128 //sys CloseHandle(handle Handle) (err error) |
129 //sys» GetStdHandle(stdhandle int) (handle Handle, err error) [failretval==Inva lidHandle] | 129 //sys» GetStdHandle(stdhandle int32) (handle Handle, err error) [failretval==In validHandle] |
minux1
2014/04/27 20:13:59
same.
| |
130 //sys findFirstFile1(name *uint16, data *win32finddata1) (handle Handle, err e rror) [failretval==InvalidHandle] = FindFirstFileW | 130 //sys findFirstFile1(name *uint16, data *win32finddata1) (handle Handle, err e rror) [failretval==InvalidHandle] = FindFirstFileW |
131 //sys findNextFile1(handle Handle, data *win32finddata1) (err error) = FindNex tFileW | 131 //sys findNextFile1(handle Handle, data *win32finddata1) (err error) = FindNex tFileW |
132 //sys FindClose(handle Handle) (err error) | 132 //sys FindClose(handle Handle) (err error) |
133 //sys GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) | 133 //sys GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) |
134 //sys GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) = GetCurrentDirectoryW | 134 //sys GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) = GetCurrentDirectoryW |
135 //sys SetCurrentDirectory(path *uint16) (err error) = SetCurrentDirectoryW | 135 //sys SetCurrentDirectory(path *uint16) (err error) = SetCurrentDirectoryW |
136 //sys CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) = Crea teDirectoryW | 136 //sys CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) = Crea teDirectoryW |
137 //sys RemoveDirectory(path *uint16) (err error) = RemoveDirectoryW | 137 //sys RemoveDirectory(path *uint16) (err error) = RemoveDirectoryW |
138 //sys DeleteFile(path *uint16) (err error) = DeleteFileW | 138 //sys DeleteFile(path *uint16) (err error) = DeleteFileW |
139 //sys MoveFile(from *uint16, to *uint16) (err error) = MoveFileW | 139 //sys MoveFile(from *uint16, to *uint16) (err error) = MoveFileW |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
195 //sys CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) [failretval==nil] = crypt3 2.CertCreateCertificateContext | 195 //sys CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) [failretval==nil] = crypt3 2.CertCreateCertificateContext |
196 //sys CertFreeCertificateContext(ctx *CertContext) (err error) = crypt32.CertF reeCertificateContext | 196 //sys CertFreeCertificateContext(ctx *CertContext) (err error) = crypt32.CertF reeCertificateContext |
197 //sys CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainCont ext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) = cry pt32.CertVerifyCertificateChainPolicy | 197 //sys CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainCont ext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) = cry pt32.CertVerifyCertificateChainPolicy |
198 //sys RegOpenKeyEx(key Handle, subkey *uint16, options uint32, desiredAccess u int32, result *Handle) (regerrno error) = advapi32.RegOpenKeyExW | 198 //sys RegOpenKeyEx(key Handle, subkey *uint16, options uint32, desiredAccess u int32, result *Handle) (regerrno error) = advapi32.RegOpenKeyExW |
199 //sys RegCloseKey(key Handle) (regerrno error) = advapi32.RegCloseKey | 199 //sys RegCloseKey(key Handle) (regerrno error) = advapi32.RegCloseKey |
200 //sys RegQueryInfoKey(key Handle, class *uint16, classLen *uint32, reserved *u int32, subkeysLen *uint32, maxSubkeyLen *uint32, maxClassLen *uint32, valuesLen *uint32, maxValueNameLen *uint32, maxValueLen *uint32, saLen *uint32, lastWriteT ime *Filetime) (regerrno error) = advapi32.RegQueryInfoKeyW | 200 //sys RegQueryInfoKey(key Handle, class *uint16, classLen *uint32, reserved *u int32, subkeysLen *uint32, maxSubkeyLen *uint32, maxClassLen *uint32, valuesLen *uint32, maxValueNameLen *uint32, maxValueLen *uint32, saLen *uint32, lastWriteT ime *Filetime) (regerrno error) = advapi32.RegQueryInfoKeyW |
201 //sys RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, re served *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (reger rno error) = advapi32.RegEnumKeyExW | 201 //sys RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, re served *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (reger rno error) = advapi32.RegEnumKeyExW |
202 //sys RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uin t32, buf *byte, buflen *uint32) (regerrno error) = advapi32.RegQueryValueExW | 202 //sys RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uin t32, buf *byte, buflen *uint32) (regerrno error) = advapi32.RegQueryValueExW |
203 //sys getCurrentProcessId() (pid uint32) = kernel32.GetCurrentProcessId | 203 //sys getCurrentProcessId() (pid uint32) = kernel32.GetCurrentProcessId |
204 //sys GetConsoleMode(console Handle, mode *uint32) (err error) = kernel32.GetC onsoleMode | 204 //sys GetConsoleMode(console Handle, mode *uint32) (err error) = kernel32.GetC onsoleMode |
205 //sys SetConsoleMode(console Handle, mode uint32) (err error) = kernel32.SetCo nsoleMode | |
205 //sys WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint3 2, reserved *byte) (err error) = kernel32.WriteConsoleW | 206 //sys WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint3 2, reserved *byte) (err error) = kernel32.WriteConsoleW |
206 //sys» ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, in putControl *byte) (err error) = kernel32.ReadConsoleW | 207 //sys» ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, in putControl *ConsoleReadconsoleControl) (err error) = kernel32.ReadConsoleW |
minux1
2014/04/27 20:13:59
same.
| |
207 | 208 |
208 // syscall interface implementation for other packages | 209 // syscall interface implementation for other packages |
209 | 210 |
210 func Exit(code int) { ExitProcess(uint32(code)) } | 211 func Exit(code int) { ExitProcess(uint32(code)) } |
211 | 212 |
212 func makeInheritSa() *SecurityAttributes { | 213 func makeInheritSa() *SecurityAttributes { |
213 var sa SecurityAttributes | 214 var sa SecurityAttributes |
214 sa.Length = uint32(unsafe.Sizeof(sa)) | 215 sa.Length = uint32(unsafe.Sizeof(sa)) |
215 sa.InheritHandle = 1 | 216 sa.InheritHandle = 1 |
216 return &sa | 217 return &sa |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
325 func Close(fd Handle) (err error) { | 326 func Close(fd Handle) (err error) { |
326 return CloseHandle(fd) | 327 return CloseHandle(fd) |
327 } | 328 } |
328 | 329 |
329 var ( | 330 var ( |
330 Stdin = getStdHandle(STD_INPUT_HANDLE) | 331 Stdin = getStdHandle(STD_INPUT_HANDLE) |
331 Stdout = getStdHandle(STD_OUTPUT_HANDLE) | 332 Stdout = getStdHandle(STD_OUTPUT_HANDLE) |
332 Stderr = getStdHandle(STD_ERROR_HANDLE) | 333 Stderr = getStdHandle(STD_ERROR_HANDLE) |
333 ) | 334 ) |
334 | 335 |
335 func getStdHandle(h int) (fd Handle) { | 336 func getStdHandle(h int32) (fd Handle) { |
336 r, _ := GetStdHandle(h) | 337 r, _ := GetStdHandle(h) |
337 CloseOnExec(r) | 338 CloseOnExec(r) |
338 return r | 339 return r |
339 } | 340 } |
340 | 341 |
341 const ImplementsGetwd = true | 342 const ImplementsGetwd = true |
342 | 343 |
343 func Getwd() (wd string, err error) { | 344 func Getwd() (wd string, err error) { |
344 b := make([]uint16, 300) | 345 b := make([]uint16, 300) |
345 n, e := GetCurrentDirectory(uint32(len(b)), &b[0]) | 346 n, e := GetCurrentDirectory(uint32(len(b)), &b[0]) |
(...skipping 581 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
927 | 928 |
928 func (s Signal) String() string { | 929 func (s Signal) String() string { |
929 if 0 <= s && int(s) < len(signals) { | 930 if 0 <= s && int(s) < len(signals) { |
930 str := signals[s] | 931 str := signals[s] |
931 if str != "" { | 932 if str != "" { |
932 return str | 933 return str |
933 } | 934 } |
934 } | 935 } |
935 return "signal " + itoa(int(s)) | 936 return "signal " + itoa(int(s)) |
936 } | 937 } |
LEFT | RIGHT |