Feature Request: Enable half-closed with CloseWrite
- 主要言語
- Go
- スター
- 5.5k
- フォーク
- 372
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
I'm writing a TCP reverse proxy over Websocket and I'm trying to use this library.
However, it provides no way to close the write side only. That's needed to indicate end of stream (EOF), which gets mapped to a FIN on the TCP connection to the origin.
Looking at the code, I see that Close() runs the full handhsake. Perhaps CloseWrite could just send the close message with the normal status, but not wait for the response. And the code should not close the connection when receiving the close message. It should only do that on the explicit Close() or CloseWrite() call by the application code.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
Start by tracing the existing Close() handshake and the code that handles received close messages. Define how an explicit CloseWrite() should signal the write-side EOF without waiting for a response or closing the connection, while preserving full closure through Close(); verify the behavior with focused WebSocket and TCP-proxy tests.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- go
- 領域
- networking
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 42/100