Open Bug 1307996 Opened 9 years ago Updated 2 months ago

Implement RTCDtlsTransport.iceTransport

Categories

(Core :: WebRTC: Networking, enhancement, P3)

enhancement

Tracking

()

Tracking Status
firefox52 --- wontfix

People

(Reporter: drno, Unassigned)

References

(Depends on 1 open bug, Blocks 1 open bug)

Details

(4 keywords, Whiteboard: [spec-compliance] webcompat:risk-high)

User Story

https://mozilla-hub.atlassian.net/browse/FFXP-677
platform-scheduled:2025-12-31
Per latest webrtc spec we are missing the RTCDtlsTransport interface. https://w3c.github.io/webrtc-pc/#rtcdtlstransport-interface At least partially implementing this interface, specifically the |state| attribute and |onstatechange| event, would allow WebRTC site to detect for the first time if something went wrong with DTLS. Implementing these two should be easy as it only means we would expose internal variables of the transportlayerdtls code. Allowing to fetch the remote certificate and getting a handle to the RTCIceTransport (bug 1307994) is probably a little bit more effort.
backlog: --- → webrtc/webaudio+
Rank: 20
Whiteboard: [spec-compliance]
Mass wontfix for bugs affecting firefox 52.
Mass change P2->P3 to align with new Mozilla triage process.
Priority: P2 → P3
Blocks: 1278299
Blocks: 1258411

We had to disable some stuff over in wpt (bug 1517444) for this recently.

See Also: → 1517444

Is this still on the roadmap?

With RTCDtlsTransport API: getRemoteCertificates the networking stack used by js-ipfs (js-libp2p) should be able to let WebRTC handle encryption & stream muxing in the browser, improving overall performance.

Roughly speaking, this is on the roadmap after get/setParameters is brought up to spec.

Assignee: nobody → mfroman
Alias: RTCDtlsTransport
Depends on: 1654399
Assignee: mfroman → nobody
Type: defect → task
Severity: normal → S3

Was misnamed. We have this, but are missing iceTransport, getRemoteCertificates(), and onerror. Repurposing. Will update wpt meta file links accordingly.

Summary: Implement the RTCDtlsTransport interface → Implement RTCDtlsTransport.iceTransport
No longer blocks: 1278299

Safari seems to partially support this (is missing RTCIceTransport.getRemoteCandidates()).

Priority: P3 → P2
Alias: RTCDtlsTransport
Type: task → enhancement
Assignee: nobody → docfaraday
See Also: 1307994
Whiteboard: [spec-compliance] → [spec-compliance] webcompat:risk-high

I don't feel this should be a webcompat priority. We generally work on things that partners ask us for and no one has mentioned support for these. Will chat with the team about it though.

Whiteboard: [spec-compliance] webcompat:risk-high → [spec-compliance] webcompat:risk-high, webcompat:blocked
Assignee: docfaraday → nobody
Whiteboard: [spec-compliance] webcompat:risk-high, webcompat:blocked → [spec-compliance] webcompat:risk-high
Flags: needinfo?(odvarko)
Flags: needinfo?(mreavy)

We can certainly lower the webcompat risk, but I would still consider it at least a moderate risk (unless we're more confident now than before that sites will at least reach out to us if they run into a WebRTC compat issue, rather than just blocking Firefox).

(In reply to Thomas Wisniewski [:twisniewski] from comment #9)

We can certainly lower the webcompat risk, but I would still consider it at least a moderate risk (unless we're more confident now than before that sites will at least reach out to us if they run into a WebRTC compat issue, rather than just blocking Firefox).

It's not a risk unless web sites are leveraging it and that in turn is causing breakage. WebRTC is a massive spec, every browser vendor works to complete support but there are lots of 'gaps'. The web conferencing team prioritizes everything based on partner feedback in our partner discussion groups. Bugs like this are included in spec gap metas -

Bug 1805496 - [Meta] WebRTC 1.0+extensions API gap (according to WPT)

By marking this bug or anything else in bugzilla as 'webcompat:risk-high' or webcompat:risk-moderate' you are essentially prioritizing this work over other work within a team that has limited resources. Please be conscious of that when adding these tags.

I see, I understand. If you are sure the risk is lower and nobody is using this API beyond our awareness, then I'll trust your judgment.

Whiteboard: [spec-compliance] webcompat:risk-high → [spec-compliance]

I chatted with Jim, and for tracking purposes, we're re-adding webcompat:risk-high based on likelihood of possible future breakage

Whiteboard: [spec-compliance] → [spec-compliance] webcompat:risk-high
User Story: (updated)
No longer blocks: webrtc-triage
User Story: (updated)
Flags: needinfo?(odvarko)
Flags: needinfo?(mreavy)
Flags: needinfo?(mreavy)
Priority: P2 → P3
Flags: needinfo?(mreavy)
You need to log in before you can comment on or make changes to this bug.