Skip to content

webrtc: RTCDataChannel negotiation conflict #563

@DougAnderson444

Description

@DougAnderson444

Taking a look at these two parts of the specs:

  1. WebRTC Direct says:

    1. _A_ and _B_ open a WebRTC data channel with `id: 0` and `negotiated: true`
    ([`pc.createDataChannel("", {negotiated: true, id:

  2. WebRTC README says:

    specs/webrtc/README.md

    Lines 134 to 135 in d2106f4

    Pion, ...). In other words libp2p WebRTC implementations MUST NOT change the
    default value `negotiated: false` when creating a `RTCDataChannel` via

These two seem to conflict when setting negotiated.

We definitely are setting the negotiated to true during the Noise handshake, so something might be missing from the explanation, like an exception if you are doing a Noise handshake?

Perhaps changing the README to add:

unless you are conducting a Noise Handshake, then  // <== added
libp2p WebRTC implementations MUST NOT change the default value `negotiated: false`

thoughts/clarifications?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions