mirror of
https://github.com/rwinkhart/sys.git
synced 2026-09-03 23:57:32 -04:00
unix: add Select syscall on AIX
As select is a keyword of Go, C.select cannot be used on gccgo files. Therefore, select call is transformed into c_select. Change-Id: Ic68a7ffa03dc5a5d70514876b5f6afb565691a4a Reviewed-on: https://go-review.googlesource.com/c/sys/+/172739 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
committed by
Ian Lance Taylor
parent
d20716ef9d
commit
f0ce4c0180
@@ -83,6 +83,8 @@ int lstat(uintptr_t, uintptr_t);
|
||||
int pause();
|
||||
int pread64(int, uintptr_t, size_t, long long);
|
||||
int pwrite64(int, uintptr_t, size_t, long long);
|
||||
#define c_select select
|
||||
int select(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
|
||||
int pselect(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
|
||||
int setregid(int, int);
|
||||
int setreuid(int, int);
|
||||
@@ -1005,6 +1007,17 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||
|
||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||
|
||||
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
||||
r0, er := C.c_select(C.int(nfd), C.uintptr_t(uintptr(unsafe.Pointer(r))), C.uintptr_t(uintptr(unsafe.Pointer(w))), C.uintptr_t(uintptr(unsafe.Pointer(e))), C.uintptr_t(uintptr(unsafe.Pointer(timeout))))
|
||||
n = int(r0)
|
||||
if r0 == -1 && er != nil {
|
||||
err = er
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||
|
||||
func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
|
||||
r0, er := C.pselect(C.int(nfd), C.uintptr_t(uintptr(unsafe.Pointer(r))), C.uintptr_t(uintptr(unsafe.Pointer(w))), C.uintptr_t(uintptr(unsafe.Pointer(e))), C.uintptr_t(uintptr(unsafe.Pointer(timeout))), C.uintptr_t(uintptr(unsafe.Pointer(sigmask))))
|
||||
n = int(r0)
|
||||
|
||||
Reference in New Issue
Block a user