blob: 5144deeccd55ba9d26a34c3f0d9046aa42264ce2 [file] [log] [blame]
David K. Bainbridgee05cf0c2021-08-19 03:16:50 +00001// Copyright 2019 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
5package unix
6
7// Round the length of a raw sockaddr up to align it properly.
8func cmsgAlignOf(salen int) int {
9 salign := SizeofPtr
10 if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) {
11 // 64-bit Dragonfly before the September 2019 ABI changes still requires
12 // 32-bit aligned access to network subsystem.
13 salign = 4
14 }
15 return (salen + salign - 1) & ^(salign - 1)
16}