blob: a8c458cb031ec241bb4b2ce7b20dde2b32f9149d [file] [log] [blame]
Don Newton7577f072020-01-06 12:41:11 -05001// Copyright 2019 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// +build arm64,openbsd
6
7package unix
8
9func setTimespec(sec, nsec int64) Timespec {
10 return Timespec{Sec: sec, Nsec: nsec}
11}
12
13func setTimeval(sec, usec int64) Timeval {
14 return Timeval{Sec: sec, Usec: usec}
15}
16
17func SetKevent(k *Kevent_t, fd, mode, flags int) {
18 k.Ident = uint64(fd)
19 k.Filter = int16(mode)
20 k.Flags = uint16(flags)
21}
22
23func (iov *Iovec) SetLen(length int) {
24 iov.Len = uint64(length)
25}
26
27func (msghdr *Msghdr) SetControllen(length int) {
28 msghdr.Controllen = uint32(length)
29}
30
31func (msghdr *Msghdr) SetIovlen(length int) {
32 msghdr.Iovlen = uint32(length)
33}
34
35func (cmsg *Cmsghdr) SetLen(length int) {
36 cmsg.Len = uint32(length)
37}
38
39// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
40// of openbsd/amd64 the syscall is called sysctl instead of __sysctl.
41const SYS___SYSCTL = SYS_SYSCTL