ChainSafe / js-libp2p-yamux

Typescript implementation of Yamux
Other
12 stars 9 forks source link

Interop failure with rust-libp2p yamux #48

Closed p-shahi closed 1 year ago

p-shahi commented 1 year ago

See: https://github.com/libp2p/test-plans/pull/178 and https://github.com/libp2p/rust-libp2p/pull/3013 This occurs on the latest version i.e. 4.0.1

Creating this here in case this is an issue within this module

cc: @wemeetagain

p-shahi commented 1 year ago

Discussion in libp2p-implementers on slack: https://filecoinproject.slack.com/archives/C03K82MU486/p1683032246412229

maschad commented 1 year ago

In https://github.com/libp2p/rust-libp2p/pull/3013 upon receiving a ping, the queue doesn't properly flush before notifying the buffer that it has received a ping, which leads the rust peer to try and open a new ping instead of returning a pong (an ACK). This will be addressed on the PR.