2016-11-08 02:05:57 +03:00
|
|
|
// Copyright 2013 The Go Authors. All rights reserved.
|
2013-06-04 12:42:58 +04:00
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
package ipv6
|
|
|
|
|
2017-03-18 12:30:21 +03:00
|
|
|
import (
|
|
|
|
"net"
|
|
|
|
|
|
|
|
"golang.org/x/net/internal/socket"
|
|
|
|
)
|
2013-06-04 12:42:58 +04:00
|
|
|
|
2016-12-15 01:23:17 +03:00
|
|
|
// BUG(mikio): On Windows, the ControlMessage for ReadFrom and WriteTo
|
|
|
|
// methods of PacketConn is not implemented.
|
|
|
|
|
2013-06-04 12:42:58 +04:00
|
|
|
// A payloadHandler represents the IPv6 datagram payload handler.
|
|
|
|
type payloadHandler struct {
|
|
|
|
net.PacketConn
|
2017-03-18 12:30:21 +03:00
|
|
|
*socket.Conn
|
2013-06-04 12:42:58 +04:00
|
|
|
rawOpt
|
|
|
|
}
|
|
|
|
|
2017-03-18 12:30:21 +03:00
|
|
|
func (c *payloadHandler) ok() bool { return c != nil && c.PacketConn != nil && c.Conn != nil }
|