Source File
sockcmsg_unix_other.go
Belonging Package
syscall
// Copyright 2019 The Go Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.//go:build aix || darwin || freebsd || linux || netbsd || openbsd || solarispackage syscallimport ()// Round the length of a raw sockaddr up to align it properly.func cmsgAlignOf( int) int {:= sizeofPtr// dragonfly needs to check ABI version at runtime, see cmsgAlignOf in// sockcmsg_dragonfly.goswitch runtime.GOOS {case "aix":// There is no alignment on AIX.= 1case "darwin", "ios", "illumos", "solaris":// NOTE: It seems like 64-bit Darwin, Illumos and Solaris// kernels still require 32-bit aligned access to network// subsystem.if sizeofPtr == 8 {= 4}case "netbsd", "openbsd":// NetBSD and OpenBSD armv7 require 64-bit alignment.if runtime.GOARCH == "arm" {= 8}// NetBSD aarch64 requires 128-bit alignment.if runtime.GOOS == "netbsd" && runtime.GOARCH == "arm64" {= 16}}return ( + - 1) & ^( - 1)}
![]() |
The pages are generated with Golds v0.7.9-preview. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |