Open Bug 1904304 Opened 3 months ago Updated 3 months ago

Firefox 127 WebRTC Audio-Video Sharing & Receiving is Not Working on web.nynja.net

Categories

(Web Compatibility :: Site Reports, defect, P3)

Firefox 127

Tracking

(Not tracked)

REOPENED

People

(Reporter: ayan.karmakar, Unassigned)

References

()

Details

(Keywords: webcompat:needs-contact, webcompat:site-report)

User Story

platform:windows,mac,linux
impact:feature-broken
configuration:general
affects:all

Attachments

(3 files)

Attached file firefox_webrtc_log.txt

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36

Steps to reproduce:

Open https://web.nynja.net/, from Normal tab and Incognito tab.
Create 2 accounts.
Send Invite from one user to the other.
Accept Invite.
Click on New Meeting >> Choose the other User >> Start Meeting
Give Mic Permission
Accept Call At other Users end

Note:

  • It was working on earlier versions of Firefox(< v127)
  • Chrome to Chrome Everything works fine
  • P2P call works with Firefox
  • Issue with conference call
  • Attached about:webrtc log

Actual results:

Call is getting established, ICE state is connected but
Firefox User is not able to send/receive audio, video, screen share to/from Remote(Chrome/Firefox) User.

Expected results:

Firefox User should be able to send/receive audio, video, screen share to/from Remote User.

The Bugbug bot thinks this bug should belong to the 'Core::WebRTC' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → WebRTC
Product: Firefox → Core

I don't think there were many changes in 127 for webrtc networking, but one thing is that we enabled the use of DTLS 1.3 by default.
Could you on about:config set the pref media.peerconnection.dtls.version.min to 771, restart Firefox, and test again, please? That effectively reverts to only support DTLS 1.2. Don't forget to reset it once you're done testing.

Flags: needinfo?(ayan.karmakar)

Hi Andreas,

Thanks for the response.
I've checked about:config of firefox 127, and I see media.peerconnection.dtls.version.min is already set to 771.
I changed media.peerconnection.dtls.version.max from 772 to 771, and then every thing(audio, video, screen share send-recv) works perfectly fine.
Since media.peerconnection.dtls.version.min is already 771, is Firefox allowing DTLS 1.2, but for some reason it choosing DTLS 1.3?

Regards,
Ayan

Flags: needinfo?(ayan.karmakar)

Thanks for confirming.

Firefox 126 allowed only DTLS 1.2, while Firefox 127 allows both DTLS 1.2 and 1.3.
Which DTLS version to use is negotiated with the remote side during the DTLS handshake. See RFC 9147 on the DTLS 1.3 spec's mention of backwards compatibility and RFC 8446 Appendix D for more details from the TLS 1.3 spec.

This seems to be an issue on nynja's end.

Blocks: 1884140
No longer blocks: webrtc-triage
Status: UNCONFIRMED → RESOLVED
Closed: 3 months ago
Resolution: --- → INVALID
Summary: Firefox 127 WebRTC Audio-Video Sharing & Receiving is Not Working → Firefox 127 WebRTC Audio-Video Sharing & Receiving is Not Working on web.nynja.net

Hi Andreas,

I've checked the wireshark packet capture logs for both Firefox 126 and Firefox 127, in both the cases I see DTLSv1.2

I've attached Firefox 127 network trace(no change in media.peerconnection.dtls.version), please check.

Attached file Firefox-127.pcapng

Firefox v127 packet capture

Could you upload the 126 pcap also? Thanks

Attached file Firefox-126.pcapng

Attached the Firefox-126 network logs, Please check.
Thanks

The behaviour seems to resemble (IIRC) the behaviour here: https://bugzilla.mozilla.org/show_bug.cgi?id=1875686.

More specifically what we observed was the following:

But the response we receive is dramatically different. If in one case (DTLS1.2) we receive all the messages, in DTLS1.3 we receive only ServerHello/Certificate (of the server)/Server key Exchange message.

That's what I see in 127 cap.

Reminder:
they used their implementation, and it was crashing (or something like this) when they saw DTLS1.3. It's to say that they didnot try to use DTLS1.3, but due to a wrong code, having DTLS1.3 in the ClientHello was causing the crash.

Upd: it does not seem to play a role.

The bug in Bouncy Castle: https://github.com/bcgit/bc-java/issues/1487

Still not resolved.

Thanks for looking into it, @Anna.

With 126 after the server sends a Server Key Exchange it also sends a Certificate Request and Server Hello Done. With 127 the latter two are missing, suggesting it's a server issue.

Since nynja is indeed broken in Firefox but works in Chrome, let's keep the bug for webcompat.

Status: RESOLVED → REOPENED
Component: WebRTC → Site Reports
Ever confirmed: true
Product: Core → Web Compatibility
Resolution: INVALID → ---
Severity: -- → S3
User Story: (updated)
Priority: -- → P3
See Also: → 1905698
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: