iovec_64bit.go 645 B

1234567891011121314151617181920
  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. //go:build (arm64 || amd64 || loong64 || ppc64 || ppc64le || mips64 || mips64le || riscv64 || s390x) && (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || zos)
  5. // +build arm64 amd64 loong64 ppc64 ppc64le mips64 mips64le riscv64 s390x
  6. // +build aix darwin dragonfly freebsd linux netbsd openbsd zos
  7. package socket
  8. import "unsafe"
  9. func (v *iovec) set(b []byte) {
  10. l := len(b)
  11. if l == 0 {
  12. return
  13. }
  14. v.Base = (*byte)(unsafe.Pointer(&b[0]))
  15. v.Len = uint64(l)
  16. }