From f626696d214f33fab4c6a6609a01b75cd191df15 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 26 Jan 2011 15:46:15 -0500 Subject: [PATCH] net: fix build on old Linux kernels Thanks to Mike Beller for identifying the problem. Fixes #1442. R=bradfitz, bradfitzgo CC=golang-dev https://golang.org/cl/4102042 --- src/pkg/net/server_test.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/pkg/net/server_test.go b/src/pkg/net/server_test.go index 3f2442a462..543227f7d1 100644 --- a/src/pkg/net/server_test.go +++ b/src/pkg/net/server_test.go @@ -25,7 +25,7 @@ func runEcho(fd io.ReadWriter, done chan<- int) { for { n, err := fd.Read(buf[0:]) - if err != nil || n == 0 { + if err != nil || n == 0 || string(buf[:n]) == "END" { break } fd.Write(buf[0:n]) @@ -79,6 +79,13 @@ func connect(t *testing.T, network, addr string, isEmpty bool) { if n != len(b) || err1 != nil { t.Fatalf("fd.Read() = %d, %v (want %d, nil)", n, err1, len(b)) } + + // Send explicit ending for unixpacket. + // Older Linux kernels do stop reads on close. + if network == "unixpacket" { + fd.Write([]byte("END")) + } + fd.Close() } -- 2.48.1