mirror of
https://github.com/octoleo/syncthing.git
synced 2024-11-14 17:24:04 +00:00
47 lines
1.7 KiB
Go
47 lines
1.7 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 ipv4
|
|
|
|
// Sticky socket options
|
|
const (
|
|
ssoTOS = iota // header field for unicast packet
|
|
ssoTTL // header field for unicast packet
|
|
ssoMulticastTTL // header field for multicast packet
|
|
ssoMulticastInterface // outbound interface for multicast packet
|
|
ssoMulticastLoopback // loopback for multicast packet
|
|
ssoReceiveTTL // header field on received packet
|
|
ssoReceiveDst // header field on received packet
|
|
ssoReceiveInterface // inbound interface on received packet
|
|
ssoPacketInfo // incbound or outbound packet path
|
|
ssoHeaderPrepend // ipv4 header prepend
|
|
ssoStripHeader // strip ipv4 header
|
|
ssoICMPFilter // icmp filter
|
|
ssoJoinGroup // any-source multicast
|
|
ssoLeaveGroup // any-source multicast
|
|
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 (
|
|
ssoTypeByte = iota + 1
|
|
ssoTypeInt
|
|
ssoTypeInterface
|
|
ssoTypeICMPFilter
|
|
ssoTypeIPMreq
|
|
ssoTypeIPMreqn
|
|
ssoTypeGroupReq
|
|
ssoTypeGroupSourceReq
|
|
)
|
|
|
|
// A sockOpt represents a binding for sticky socket option.
|
|
type sockOpt struct {
|
|
name int // option name, must be equal or greater than 1
|
|
typ int // option value type, must be equal or greater than 1
|
|
}
|