blob: 8eed3c4d4e7c2b65c4522eca11a89ec300807060 [file] [log] [blame]
Zack Williamse940c7a2019-08-21 14:25:39 -07001// Copyright 2017 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
David K. Bainbridgebd6b2882021-08-26 13:31:02 +00005//go:build arm && openbsd
Zack Williamse940c7a2019-08-21 14:25:39 -07006// +build arm,openbsd
7
8package unix
9
10func setTimespec(sec, nsec int64) Timespec {
11 return Timespec{Sec: sec, Nsec: int32(nsec)}
12}
13
14func setTimeval(sec, usec int64) Timeval {
15 return Timeval{Sec: sec, Usec: int32(usec)}
16}
17
18func SetKevent(k *Kevent_t, fd, mode, flags int) {
19 k.Ident = uint32(fd)
20 k.Filter = int16(mode)
21 k.Flags = uint16(flags)
22}
23
24func (iov *Iovec) SetLen(length int) {
25 iov.Len = uint32(length)
26}
27
28func (msghdr *Msghdr) SetControllen(length int) {
29 msghdr.Controllen = uint32(length)
30}
31
divyadesai19009132020-03-04 12:58:08 +000032func (msghdr *Msghdr) SetIovlen(length int) {
33 msghdr.Iovlen = uint32(length)
34}
35
Zack Williamse940c7a2019-08-21 14:25:39 -070036func (cmsg *Cmsghdr) SetLen(length int) {
37 cmsg.Len = uint32(length)
38}
39
40// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
41// of openbsd/arm the syscall is called sysctl instead of __sysctl.
42const SYS___SYSCTL = SYS_SYSCTL