Commit 27575540 authored by Mikio Hara's avatar Mikio Hara

net: fix WriteTo on Plan 9

This change excludes internal UDP header size from a result of number of
bytes written on WriteTo.

Change-Id: I847d57f7f195657b6f14efdf1b4cfab13d4490dd
Reviewed-on: https://go-review.googlesource.com/9196Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: 's avatarDavid du Colombier <0intro@gmail.com>
parent 91f2db3c
......@@ -86,11 +86,10 @@ func (c *UDPConn) WriteToUDP(b []byte, addr *UDPAddr) (int, error) {
buf := make([]byte, udpHeaderSize+len(b))
i := copy(buf, h.Bytes())
copy(buf[i:], b)
n, err := c.fd.data.Write(buf)
if err != nil {
err = &OpError{Op: "write", Net: c.fd.dir, Addr: addr, Err: err}
if _, err := c.fd.data.Write(buf); err != nil {
return 0, &OpError{Op: "write", Net: c.fd.dir, Addr: addr, Err: err}
}
return n, err
return len(b), nil
}
// WriteTo implements the PacketConn WriteTo method.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment