identify: Exchange fails with go-libp2p over QUIC when initialy closing
@elenaf9 is already working on this.
Since Jan 2, 2023.
- Dominant language
- Rust
- Stars
- 5.6k
- Forks
- 1.3k
- Avg merge
- 8h 47m
- Merged PRs (30d)
- 19
Description
To receive a remote's identify information one opens a stream and waits for the remote to send the identify payload in that stream.
When connecting to a go-libp2p node over a QUIC connection, identify exchanges fail.
Changing the above to flush instead of close resolves the issue. Note that flushing instead of no action at all is needed in case multistream-select V1Lazy is used where the multistream-select message is only send on the stream once userdata is send or it is flushed.
Occurs with the rust-libp2p punchr client when connecting to go-libp2p IPFS nodes.
Opening with little details for now to have a central place to track. @elenaf9 in case you need more details, let me know.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.