mirror of
https://github.com/golang/go
synced 2024-11-22 03:54:39 -07:00
net: BUG section for ReadFrom, ReadFromIP methods of IPConn on "ip4" network
Fixes #3944. R=golang-dev, r CC=golang-dev https://golang.org/cl/13263043
This commit is contained in:
parent
d595b67a12
commit
a8b4a1e63a
@ -202,7 +202,7 @@ func TestPacketConnICMPEcho(t *testing.T) {
|
||||
if _, _, err := c.ReadFrom(rb); err != nil {
|
||||
t.Fatalf("PacketConn.ReadFrom failed: %v", err)
|
||||
}
|
||||
// TODO: fix issue 3944
|
||||
// See BUG section.
|
||||
//if net == "ip4" {
|
||||
// rb = ipv4Payload(rb)
|
||||
//}
|
||||
|
@ -11,6 +11,18 @@ import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// BUG(mikio): On every POSIX platform, reads from the "ip4" network
|
||||
// using the ReadFrom or ReadFromIP method might not return a complete
|
||||
// IPv4 packet, including its header, even if there is space
|
||||
// available. This can occur even in cases where Read or ReadMsgIP
|
||||
// could return a complete packet. For this reason, it is recommended
|
||||
// that you do not uses these methods if it is important to receive a
|
||||
// full packet.
|
||||
//
|
||||
// The Go 1 compatibliity guidelines make it impossible for us to
|
||||
// change the behavior of these methods; use Read or ReadMsgIP
|
||||
// instead.
|
||||
|
||||
func sockaddrToIP(sa syscall.Sockaddr) Addr {
|
||||
switch sa := sa.(type) {
|
||||
case *syscall.SockaddrInet4:
|
||||
|
Loading…
Reference in New Issue
Block a user