1 // Copyright 2018 The Go Authors. All rights reserved. |
1 // Copyright 2018 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 //go:build aix |
5 // +build aix |
6 // +build aix |
6 |
7 |
7 // Aix system calls. |
8 // Aix system calls. |
8 // This file is compiled as ordinary Go code, |
9 // This file is compiled as ordinary Go code, |
9 // but it is also input to mksyscall, |
10 // but it is also input to mksyscall, |
16 import "unsafe" |
17 import "unsafe" |
17 |
18 |
18 /* |
19 /* |
19 * Wrapped |
20 * Wrapped |
20 */ |
21 */ |
|
22 |
|
23 func Access(path string, mode uint32) (err error) { |
|
24 return Faccessat(AT_FDCWD, path, mode, 0) |
|
25 } |
|
26 |
|
27 func Chmod(path string, mode uint32) (err error) { |
|
28 return Fchmodat(AT_FDCWD, path, mode, 0) |
|
29 } |
|
30 |
|
31 func Chown(path string, uid int, gid int) (err error) { |
|
32 return Fchownat(AT_FDCWD, path, uid, gid, 0) |
|
33 } |
|
34 |
|
35 func Creat(path string, mode uint32) (fd int, err error) { |
|
36 return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode) |
|
37 } |
21 |
38 |
22 //sys utimes(path string, times *[2]Timeval) (err error) |
39 //sys utimes(path string, times *[2]Timeval) (err error) |
23 func Utimes(path string, tv []Timeval) error { |
40 func Utimes(path string, tv []Timeval) error { |
24 if len(tv) != 2 { |
41 if len(tv) != 2 { |
25 return EINVAL |
42 return EINVAL |
401 //sys Mkdirat(dirfd int, path string, mode uint32) (err error) |
418 //sys Mkdirat(dirfd int, path string, mode uint32) (err error) |
402 //sys Mkfifo(path string, mode uint32) (err error) |
419 //sys Mkfifo(path string, mode uint32) (err error) |
403 //sys Mknod(path string, mode uint32, dev int) (err error) |
420 //sys Mknod(path string, mode uint32, dev int) (err error) |
404 //sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error) |
421 //sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error) |
405 //sys Nanosleep(time *Timespec, leftover *Timespec) (err error) |
422 //sys Nanosleep(time *Timespec, leftover *Timespec) (err error) |
406 //sys Open(path string, mode int, perm uint32) (fd int, err error) = open64 |
423 //sys Open(path string, mode int, perm uint32) (fd int, err error) = open64 |
407 //sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) |
424 //sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) |
408 //sys read(fd int, p []byte) (n int, err error) |
425 //sys read(fd int, p []byte) (n int, err error) |
409 //sys Readlink(path string, buf []byte) (n int, err error) |
426 //sys Readlink(path string, buf []byte) (n int, err error) |
410 //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) |
427 //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) |
411 //sys Setdomainname(p []byte) (err error) |
428 //sys Setdomainname(p []byte) (err error) |
412 //sys Sethostname(p []byte) (err error) |
429 //sys Sethostname(p []byte) (err error) |
421 //sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) |
438 //sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) |
422 //sys Sync() |
439 //sys Sync() |
423 //sysnb Times(tms *Tms) (ticks uintptr, err error) |
440 //sysnb Times(tms *Tms) (ticks uintptr, err error) |
424 //sysnb Umask(mask int) (oldmask int) |
441 //sysnb Umask(mask int) (oldmask int) |
425 //sysnb Uname(buf *Utsname) (err error) |
442 //sysnb Uname(buf *Utsname) (err error) |
426 //sys Unlink(path string) (err error) |
443 //sys Unlink(path string) (err error) |
427 //sys Unlinkat(dirfd int, path string, flags int) (err error) |
444 //sys Unlinkat(dirfd int, path string, flags int) (err error) |
428 //sys Ustat(dev int, ubuf *Ustat_t) (err error) |
445 //sys Ustat(dev int, ubuf *Ustat_t) (err error) |
429 //sys write(fd int, p []byte) (n int, err error) |
446 //sys write(fd int, p []byte) (n int, err error) |
430 //sys readlen(fd int, p *byte, np int) (n int, err error) = read |
447 //sys readlen(fd int, p *byte, np int) (n int, err error) = read |
431 //sys writelen(fd int, p *byte, np int) (n int, err error) = write |
448 //sys writelen(fd int, p *byte, np int) (n int, err error) = write |
432 |
449 |
496 //sys Mlockall(flags int) (err error) |
513 //sys Mlockall(flags int) (err error) |
497 //sys Msync(b []byte, flags int) (err error) |
514 //sys Msync(b []byte, flags int) (err error) |
498 //sys Munlock(b []byte) (err error) |
515 //sys Munlock(b []byte) (err error) |
499 //sys Munlockall() (err error) |
516 //sys Munlockall() (err error) |
500 |
517 |
501 //sysnb pipe(p *[2]_C_int) (err error) |
518 //sysnb pipe(p *[2]_C_int) (err error) |
502 |
519 |
503 func Pipe(p []int) (err error) { |
520 func Pipe(p []int) (err error) { |
504 if len(p) != 2 { |
521 if len(p) != 2 { |
505 return EINVAL |
522 return EINVAL |
506 } |
523 } |