blob: 9c760dfcd21cbead500f84ca8e4ea60818636762 [file] [log] [blame]
Mikio Haracdfc4ce2013-06-04 17:42:58 +09001// Copyright 2013 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
Mikio Hara0cda7282014-01-23 06:36:22 +01005// +build dragonfly plan9 solaris
6
Mikio Haracdfc4ce2013-06-04 17:42:58 +09007package ipv6
8
Mikio Hara0cda7282014-01-23 06:36:22 +01009import "net"
Mikio Haracdfc4ce2013-06-04 17:42:58 +090010
11// MulticastHopLimit returns the hop limit field value for outgoing
12// multicast packets.
13func (c *dgramOpt) MulticastHopLimit() (int, error) {
14 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010015 return 0, errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090016}
17
18// SetMulticastHopLimit sets the hop limit field value for future
19// outgoing multicast packets.
20func (c *dgramOpt) SetMulticastHopLimit(hoplim int) error {
21 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010022 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090023}
24
25// MulticastInterface returns the default interface for multicast
26// packet transmissions.
27func (c *dgramOpt) MulticastInterface() (*net.Interface, error) {
28 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010029 return nil, errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090030}
31
32// SetMulticastInterface sets the default interface for future
33// multicast packet transmissions.
34func (c *dgramOpt) SetMulticastInterface(ifi *net.Interface) error {
35 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010036 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090037}
38
39// MulticastLoopback reports whether transmitted multicast packets
40// should be copied and send back to the originator.
41func (c *dgramOpt) MulticastLoopback() (bool, error) {
42 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010043 return false, errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090044}
45
46// SetMulticastLoopback sets whether transmitted multicast packets
47// should be copied and send back to the originator.
48func (c *dgramOpt) SetMulticastLoopback(on bool) error {
49 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010050 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090051}
52
53// JoinGroup joins the group address group on the interface ifi.
54// It uses the system assigned multicast interface when ifi is nil,
55// although this is not recommended because the assignment depends on
56// platforms and sometimes it might require routing configuration.
57func (c *dgramOpt) JoinGroup(ifi *net.Interface, group net.Addr) error {
58 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010059 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090060}
61
62// LeaveGroup leaves the group address group on the interface ifi.
63func (c *dgramOpt) LeaveGroup(ifi *net.Interface, group net.Addr) error {
64 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010065 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090066}
67
68// Checksum reports whether the kernel will compute, store or verify a
69// checksum for both incoming and outgoing packets. If on is true, it
70// returns an offset in bytes into the data of where the checksum
71// field is located.
72func (c *dgramOpt) Checksum() (on bool, offset int, err error) {
73 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010074 return false, 0, errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090075}
76
77// SetChecksum enables the kernel checksum processing. If on is ture,
78// the offset should be an offset in bytes into the data of where the
79// checksum field is located.
80func (c *dgramOpt) SetChecksum(on bool, offset int) error {
81 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010082 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090083}
84
85// ICMPFilter returns an ICMP filter.
86func (c *dgramOpt) ICMPFilter() (*ICMPFilter, error) {
87 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010088 return nil, errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090089}
90
91// SetICMPFilter deploys the ICMP filter.
92func (c *dgramOpt) SetICMPFilter(f *ICMPFilter) error {
93 // TODO(mikio): Implement this
Mikio Hara0cda7282014-01-23 06:36:22 +010094 return errOpNoSupport
Mikio Haracdfc4ce2013-06-04 17:42:58 +090095}