8e5b17cf13
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
46 lines
1.9 KiB
Go
46 lines
1.9 KiB
Go
// Copyright 2014 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.
|
|
|
|
package ipv6
|
|
|
|
// Sticky socket options
|
|
const (
|
|
ssoTrafficClass = iota // header field for unicast packet, RFC 3542
|
|
ssoHopLimit // header field for unicast packet, RFC 3493
|
|
ssoMulticastInterface // outbound interface for multicast packet, RFC 3493
|
|
ssoMulticastHopLimit // header field for multicast packet, RFC 3493
|
|
ssoMulticastLoopback // loopback for multicast packet, RFC 3493
|
|
ssoReceiveTrafficClass // header field on received packet, RFC 3542
|
|
ssoReceiveHopLimit // header field on received packet, RFC 2292 or 3542
|
|
ssoReceivePacketInfo // incbound or outbound packet path, RFC 2292 or 3542
|
|
ssoReceivePathMTU // path mtu, RFC 3542
|
|
ssoPathMTU // path mtu, RFC 3542
|
|
ssoChecksum // packet checksum, RFC 2292 or 3542
|
|
ssoICMPFilter // icmp filter, RFC 2292 or 3542
|
|
ssoJoinGroup // any-source multicast, RFC 3493
|
|
ssoLeaveGroup // any-source multicast, RFC 3493
|
|
ssoJoinSourceGroup // source-specific multicast
|
|
ssoLeaveSourceGroup // source-specific multicast
|
|
ssoBlockSourceGroup // any-source or source-specific multicast
|
|
ssoUnblockSourceGroup // any-source or source-specific multicast
|
|
ssoMax
|
|
)
|
|
|
|
// Sticky socket option value types
|
|
const (
|
|
ssoTypeInt = iota + 1
|
|
ssoTypeInterface
|
|
ssoTypeICMPFilter
|
|
ssoTypeMTUInfo
|
|
ssoTypeIPMreq
|
|
ssoTypeGroupReq
|
|
ssoTypeGroupSourceReq
|
|
)
|
|
|
|
// A sockOpt represents a binding for sticky socket option.
|
|
type sockOpt struct {
|
|
level int // option level
|
|
name int // option name, must be equal or greater than 1
|
|
typ int // option value type, must be equal or greater than 1
|
|
}
|