diff options
| author | Sandro Jäckel <sandro.jaeckel@sap.com> | 2022-04-01 14:08:42 +0200 |
|---|---|---|
| committer | Sandro Jäckel <sandro.jaeckel@sap.com> | 2022-04-01 14:09:09 +0200 |
| commit | d35e5fb09bfac1fa381e4ed004ea24a6025e36f4 (patch) | |
| tree | e47874ed2c6830abf4c84e9068bc187fb041b6b4 /vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go | |
| parent | cb398f58a5cb4f3e858fe60e84debde6ab58f7c8 (diff) | |
| download | gofu-d35e5fb09bfac1fa381e4ed004ea24a6025e36f4.tar.gz | |
Bump to go 1.17 and update all dependencies
Diffstat (limited to 'vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go')
| -rw-r--r-- | vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go | 55 |
1 files changed, 53 insertions, 2 deletions
diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go index 881cacc..16eed17 100644 --- a/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go +++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -// +build aix -// +build ppc64 +//go:build aix && ppc64 +// +build aix,ppc64 package unix @@ -29,6 +29,57 @@ func (msghdr *Msghdr) SetControllen(length int) { msghdr.Controllen = uint32(length) } +func (msghdr *Msghdr) SetIovlen(length int) { + msghdr.Iovlen = int32(length) +} + func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint32(length) } + +// In order to only have Timespec structure, type of Stat_t's fields +// Atim, Mtim and Ctim is changed from StTimespec to Timespec during +// ztypes generation. +// On ppc64, Timespec.Nsec is an int64 while StTimespec.Nsec is an +// int32, so the fields' value must be modified. +func fixStatTimFields(stat *Stat_t) { + stat.Atim.Nsec >>= 32 + stat.Mtim.Nsec >>= 32 + stat.Ctim.Nsec >>= 32 +} + +func Fstat(fd int, stat *Stat_t) error { + err := fstat(fd, stat) + if err != nil { + return err + } + fixStatTimFields(stat) + return nil +} + +func Fstatat(dirfd int, path string, stat *Stat_t, flags int) error { + err := fstatat(dirfd, path, stat, flags) + if err != nil { + return err + } + fixStatTimFields(stat) + return nil +} + +func Lstat(path string, stat *Stat_t) error { + err := lstat(path, stat) + if err != nil { + return err + } + fixStatTimFields(stat) + return nil +} + +func Stat(path string, statptr *Stat_t) error { + err := stat(path, statptr) + if err != nil { + return err + } + fixStatTimFields(statptr) + return nil +} |
