1// Copyright 2020 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// Hand edited based on zerrors_zos_s390x.go
6// TODO(Bill O'Farrell): auto-generate.
7
8package ipv6
9
10const (
11	sysIPV6_ADDR_PREFERENCES  = 32
12	sysIPV6_CHECKSUM          = 19
13	sysIPV6_DONTFRAG          = 29
14	sysIPV6_DSTOPTS           = 23
15	sysIPV6_HOPLIMIT          = 11
16	sysIPV6_HOPOPTS           = 22
17	sysIPV6_JOIN_GROUP        = 5
18	sysIPV6_LEAVE_GROUP       = 6
19	sysIPV6_MULTICAST_HOPS    = 9
20	sysIPV6_MULTICAST_IF      = 7
21	sysIPV6_MULTICAST_LOOP    = 4
22	sysIPV6_NEXTHOP           = 20
23	sysIPV6_PATHMTU           = 12
24	sysIPV6_PKTINFO           = 13
25	sysIPV6_PREFER_SRC_CGA    = 0x10
26	sysIPV6_PREFER_SRC_COA    = 0x02
27	sysIPV6_PREFER_SRC_HOME   = 0x01
28	sysIPV6_PREFER_SRC_NONCGA = 0x20
29	sysIPV6_PREFER_SRC_PUBLIC = 0x08
30	sysIPV6_PREFER_SRC_TMP    = 0x04
31	sysIPV6_RECVDSTOPTS       = 28
32	sysIPV6_RECVHOPLIMIT      = 14
33	sysIPV6_RECVHOPOPTS       = 26
34	sysIPV6_RECVPATHMTU       = 16
35	sysIPV6_RECVPKTINFO       = 15
36	sysIPV6_RECVRTHDR         = 25
37	sysIPV6_RECVTCLASS        = 31
38	sysIPV6_RTHDR             = 21
39	sysIPV6_RTHDRDSTOPTS      = 24
40	sysIPV6_RTHDR_TYPE_0      = 0
41	sysIPV6_TCLASS            = 30
42	sysIPV6_UNICAST_HOPS      = 3
43	sysIPV6_USE_MIN_MTU       = 18
44	sysIPV6_V6ONLY            = 10
45
46	sysMCAST_JOIN_GROUP         = 40
47	sysMCAST_LEAVE_GROUP        = 41
48	sysMCAST_JOIN_SOURCE_GROUP  = 42
49	sysMCAST_LEAVE_SOURCE_GROUP = 43
50	sysMCAST_BLOCK_SOURCE       = 44
51	sysMCAST_UNBLOCK_SOURCE     = 45
52
53	sysICMP6_FILTER = 0x1
54
55	sizeofSockaddrStorage = 128
56	sizeofICMPv6Filter    = 32
57	sizeofInet6Pktinfo    = 20
58	sizeofIPv6Mtuinfo     = 32
59	sizeofSockaddrInet6   = 28
60	sizeofGroupReq        = 136
61	sizeofGroupSourceReq  = 264
62)
63
64type sockaddrStorage struct {
65	Len      uint8
66	Family   byte
67	ss_pad1  [6]byte
68	ss_align int64
69	ss_pad2  [112]byte
70}
71
72type sockaddrInet6 struct {
73	Len      uint8
74	Family   uint8
75	Port     uint16
76	Flowinfo uint32
77	Addr     [16]byte
78	Scope_id uint32
79}
80
81type inet6Pktinfo struct {
82	Addr    [16]byte
83	Ifindex uint32
84}
85
86type ipv6Mtuinfo struct {
87	Addr sockaddrInet6
88	Mtu  uint32
89}
90
91type groupReq struct {
92	Interface uint32
93	reserved  uint32
94	Group     sockaddrStorage
95}
96
97type groupSourceReq struct {
98	Interface uint32
99	reserved  uint32
100	Group     sockaddrStorage
101	Source    sockaddrStorage
102}
103
104type icmpv6Filter struct {
105	Filt [8]uint32
106}
107