github.com/Andyfoo/golang/x/net@v0.0.0-20190901054642-57c1bf301704/internal/socket/msghdr_linux_64bit.go (about)

     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  
     8  package socket
     9  
    10  import "unsafe"
    11  
    12  func (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  
    21  func (h *msghdr) setControl(b []byte) {
    22  	h.Control = (*byte)(unsafe.Pointer(&b[0]))
    23  	h.Controllen = uint64(len(b))
    24  }