Closed
Description
Proposal Details
The following syscalls could be supported on modern OSX versions (Darwin 11 and newer)
unix.Readv(fd int, iovs [][]byte) (n int, err error)
unix.Preadv(fd int, iovs [][]byte, offset int64) (n int, err error)
unix.Writev(fd int, iovs [][]byte) (n int, err error)
unix.Pwritev(fd int, iovs [][]byte, offset int64) (n int, err error)
I think https://go-review.googlesource.com/c/sys/+/548795 contains everything needed to implement this on Darwin.
In cases where the version is too old, the public functions in unix
would simply return ENOSYS
instead of running into a dyld
error due to trying to jump to a function that doesn't exist.