1// 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
5// +build arm64 amd64 ppc64 ppc64le mips64 mips64le riscv64 s390x
6// +build linux
7
8package socket
9
10import "unsafe"
11
12func (h *msghdr) setIov(vs []iovec) {
13	l := len(vs)
14	if l == 0 {
15		return
16	}
17	h.Iov = &vs[0]
18	h.Iovlen = uint64(l)
19}
20
21func (h *msghdr) setControl(b []byte) {
22	h.Control = (*byte)(unsafe.Pointer(&b[0]))
23	h.Controllen = uint64(len(b))
24}
25