]> Cypherpunks repositories - gostls13.git/commit
net: close the connection gracefully on Plan 9
authorDavid du Colombier <0intro@gmail.com>
Mon, 17 Oct 2016 17:15:37 +0000 (19:15 +0200)
committerDavid du Colombier <0intro@gmail.com>
Tue, 18 Oct 2016 12:56:52 +0000 (12:56 +0000)
commit3d1ae4b75c77a88ba3b20ada874f1027365a8060
tree3109f9d495241156511d44960496a14d1ecb6897
parenta431bdc712c7a404307f38228271d970d9d2c023
net: close the connection gracefully on Plan 9

Previously, we used to write the "hangup" message to
the TCP connection control file to be able to close
a connection, while waking up the readers.

The "hangup" message closes the TCP connection with a
RST message. This is a problem when closing a connection
consecutively to a write, because the reader may not have
time to acknowledge the message before the connection is
closed, resulting in loss of data.

We use a "close" message, newly implemented in the Plan 9
kernel to be able to close a TCP connection gracefully with a FIN.

Updates #15464.

Change-Id: I2050cc72fdf7a350bc6c9128bae7d14af11e599c
Reviewed-on: https://go-review.googlesource.com/31271
Run-TryBot: David du Colombier <0intro@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/net/fd_plan9.go