Closed Bug 1174689 Opened 10 years ago Closed 10 years ago

Subsequent setLocalDescription fails with InvalidSessionDescriptionError

Categories

(Core :: WebRTC, defect)

38 Branch
x86_64
macOS
defect
Not set
normal

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: michael.froehlich, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/600.6.3 (KHTML, like Gecko) Version/8.0.6 Safari/600.6.3 Steps to reproduce: I initiated a webrtc call from Firefox to Chrome, where FF 38.0.5 is only receiving audio. During the session I wanted to upgrade to bidirectional audio, however setLocalDescription failed with: DOMException [InvalidSessionDescriptionError: "Invalid description, no ice-ufrag attribute" code: 0 nsresult: 0x0] Actual results: Firefox is making the offer in both cases. The first one with OfferToReceiveAudio: true, the second one providing the local stream into the session. First offer SDP: v=0 o=mozilla...THIS_IS_SDPARTA-38.0.5 1789871440271733710 0 IN IP4 0.0.0.0 s=- t=0 0 a=fingerprint:sha-256 A2:05:F8:7D:53:60:F1:9B:71:A8:A4:F5:90:9F:17:18:A7:AF:5F:CE:0C:26:ED:8B:02:71:82:2D:4B:2F:94:3B a=group:BUNDLE sdparta_0 a=ice-options:trickle a=msid-semantic:WMS * m=audio 9 RTP/SAVPF 109 9 0 8 c=IN IP4 0.0.0.0 a=recvonly a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=ice-pwd:2beebda3c141cef0ded6913d0a86caf7 a=ice-ufrag:fa037e22 a=mid:sdparta_0 a=rtcp-mux a=rtpmap:109 opus/48000/2 a=rtpmap:9 G722/8000/1 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=setup:actpass Chrome answer: v=0 o=- 9126077397863599194 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE sdparta_0 a=msid-semantic: WMS 64527DBB-A018-4B44-B6AA6988D3199DE1 m=audio 1 RTP/SAVPF 109 0 8 c=IN IP4 0.0.0.0 a=rtcp:1 IN IP4 0.0.0.0 a=ice-ufrag:YWb9jS/zeznEu1u5 a=ice-pwd:LZSXXa9bn4HTjF3BpaLkIR71 a=fingerprint:sha-256 94:BE:F3:87:BC:30:11:C7:FD:9F:15:1A:A8:6A:A3:6C:E0:A8:3A:8B:BB:1D:62:1D:5F:26:4E:2B:85:6D:39:01 a=setup:active a=mid:sdparta_0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=sendonly a=rtcp-mux a=rtpmap:109 OPUS/48000/2 a=fmtp:109 minptime=10 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=maxptime:60 a=ssrc:2924590551 cname:Q1t0aRZxEDgXRkyA a=ssrc:2924590551 msid:64527DBB-A018-4B44-B6AA6988D3199DE1 64527DBB-A018-4B44-B6AA6988D3199DE1 a=ssrc:2924590551 mslabel:64527DBB-A018-4B44-B6AA6988D3199DE1 a=ssrc:2924590551 label:64527DBB-A018-4B44-B6AA6988D3199DE1 Second offer SDP: v=0 o=mozilla...THIS_IS_SDPARTA-38.0.5 1120799112872777402 1 IN IP4 0.0.0.0 s=- t=0 0 a=fingerprint:sha-256 1E:D0:99:A7:B8:89:66:A2:51:DD:37:2C:A7:7C:35:A8:3B:18:D4:6B:12:D2:5F:61:80:DE:3A:DF:25:74:CF:4A a=group:BUNDLE sdparta_0 a=ice-options:trickle a=msid-semantic:WMS * m=audio 1 RTP/SAVPF 109 9 0 8 c=IN IP4 0.0.0.0 a=candidate:3010947332 1 udp 2097152000 10.1.136.103 45000 typ host generation 0 a=candidate:4260664820 1 tcp 1476395008 10.1.136.103 45000 typ host generation 0 a=sendrecv a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=ice-pwd:ed0a086945eaf3146120bd0b5bf1e539 a=ice-ufrag:e30d6b0e a=mid:sdparta_0 a=msid:{18257102-b9fd-e64e-8b29-865abb845028} {46d3254f-d955-1f41-9daa-6b00ffe89d61} a=rtcp-muxa=rtpmap:109 opus/48000/2 a=rtpmap:9 G722/8000/1 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=setup:actpass a=ssrc:1565517672 cname:{e93b630b-6886-654b-96a6-e08968adb6a5} setLocalDescription failed with error: DOMException [InvalidSessionDescriptionError: "Invalid description, no ice-ufrag attribute" code: 0 nsresult: 0x0] Even though I see ice-ufrag in the first and second offer. Expected results: Local description should have been applied without issues.
Component: Untriaged → WebRTC
Product: Firefox → Core
OS: Unspecified → Mac OS X
Hardware: Unspecified → x86_64
Can one of you look at this when you get back from PTO? I'm looking to confirm and triage this.
Flags: needinfo?(drno)
Flags: needinfo?(docfaraday)
This doesn't make any sense. That second SDP has a different fingerprint, ice-ufrag, and ice-pwd. All three are things that should stay the same in the current codebase. Can you post a test-case?
Flags: needinfo?(docfaraday) → needinfo?(michael.froehlich)
How come that the second SDP offer contains a TCP ICE candidate even though Fx 38 does not support ICE TCP (yet)?
Flags: needinfo?(drno)
> This doesn't make any sense. That second SDP has a different fingerprint, > ice-ufrag, and ice-pwd. All three are things that should stay the same in > the current codebase. Can you post a test-case? To the bug reporter -- Hi Michael, Can you post a test-case? Else there's nothing actionable for us here, and I'll need to resolve this bug as INCOMPLETE. Thanks.
Marking this resolved incomplete because we can't move forward without more info from the bug reporter, and we've had an unanswered needinfo into him/her for over a month.
Status: UNCONFIRMED → RESOLVED
Closed: 10 years ago
Resolution: --- → INCOMPLETE
Flags: needinfo?(michael.froehlich)
You need to log in before you can comment on or make changes to this bug.