• David du Colombier's avatar
    net: close the connection gracefully on Plan 9 · 3d1ae4b7
    David du Colombier authored
    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: default avatarBrad Fitzpatrick <bradfitz@golang.org>
    3d1ae4b7
fd_plan9.go 3.68 KB