unix: add Readv, Writev, Preadv, Pwritev for OpenBSD

Add OpenBSD libc syscall wrappers for vectored I/O, and share the
existing Darwin wrapper implementation and tests.

Fixes golang/go#78049

Change-Id: Ie2743ef36a5cb73b05cc551c9c1108503f5992b6
Reviewed-on: https://go-review.googlesource.com/c/sys/+/771300
LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Auto-Submit: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
This commit is contained in:
Aaqa Ishtyaq
2026-05-12 12:53:07 -07:00
committed by Gopher Robot
parent fb1facd76f
commit 04396e85d4
18 changed files with 968 additions and 89 deletions
+4
View File
@@ -300,6 +300,10 @@ func Uname(uname *Utsname) error {
//sys Pathconf(path string, name int) (val int, err error)
//sys pread(fd int, p []byte, offset int64) (n int, err error)
//sys pwrite(fd int, p []byte, offset int64) (n int, err error)
//sys readv(fd int, iovecs []Iovec) (n int, err error)
//sys writev(fd int, iovecs []Iovec) (n int, err error)
//sys preadv(fd int, iovecs []Iovec, offset int64) (n int, err error)
//sys pwritev(fd int, iovecs []Iovec, offset int64) (n int, err error)
//sys read(fd int, p []byte) (n int, err error)
//sys Readlink(path string, buf []byte) (n int, err error)
//sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error)