-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Description
The libp2p WebRTC transport uses a protobuf message containing the payload and flags for signaling (half-)closing and resets of substreams.
The litep2p implementation does not set these flags when a substream is closed.
Strictly speaking, to be fully spec compliant, closing a substream should perform the following steps:
- Stop accepting new data to send out.
- Ensure that all pending data has been sent (flush).
- Ideally, in the last protobuf message used for 2., set the
FINflag. Otherwise send a protobuf message with an empty payload. - Wait for the remote to respond with a
FIN_ACK. - Close the underlying WebRTC data channel (
DirectApi::close_data_channel()) - Drop all resources associated with the substream.
Metadata
Metadata
Assignees
Labels
No labels