[Home]

Summary:ASTERISK-23026: [patch]Asterisk should send STUN messages using role 'ICE-CONTROLLING' when being offerer of SDP
Reporter:Marko Seidenglanz (markose)Labels:
Date Opened:2013-12-18 02:46:59.000-0600Date Closed:2014-06-26 13:46:47
Priority:MajorRegression?
Status:Closed/CompleteComponents:Resources/General
Versions:12.0.0 Frequency of
Occurrence
Constant
Related
Issues:
is related toASTERISK-22961 [patch] DTLS-SRTP not working with SHA-256
is related toASTERISK-23213 SIP over WS: Audio problems when upgrading to 11.8 from 11.7 with endpoints behind NAT
Environment:Attachments:( 0) res_rtp_asterisk_ice_role.patch
Description:When Asterisk initiates an ICE-based session, then it must send it's STUN check messages using role "ICE-CONTROLLING". Currently it uses "ICE-CONTROLLED". Though the role conflict get's resolved correctly, it does not conform to http://tools.ietf.org/html/rfc5245#section-5.2
Comments:By: Marko Seidenglanz (markose) 2014-01-06 05:33:21.170-0600

The following patch must be applied to res_rtp_asterisk to make outgoing calls to WebRTC capable browsers working. This is necessary due to the following issue in role negotiation:
https://code.google.com/p/webrtc/issues/detail?id=2717&can=4&colspec=ID%20Pri%20Mstone%20ReleaseBlock%20Area%20Status%20Owner%20Summary

[Edit by Rusty Newton - Removing inline patch, since we can't use that without license]

By: Giovanni Bezicheri (gbezicheri) 2014-01-10 09:49:30.076-0600

Right. I report the same error that causes audio input loss in my sipml5 phone. I will try this patch.

By: Giovanni Bezicheri (gbezicheri) 2014-01-13 02:23:02.342-0600

The patch has worked! Now webrtc work correctly, Thanks!
I have slightly modified the patch for the 11.7 version.

By: Rusty Newton (rnewton) 2014-01-13 11:40:48.489-0600

Hi! As per the guidelines, please remove the inline patches and attach your patch to the issue under license.

https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines#AsteriskIssueGuidelines-PatchandCodesubmission

This must be done for the code to be considered for inclusion into Asterisk.

By: Giovanni Bezicheri (gbezicheri) 2014-01-17 08:39:03.439-0600

I have attached the patch that forces Asterisk role to ICE_CONTROLLING in a ICE session.

By: Jonathan Rose (jrose) 2014-02-27 11:11:20.682-0600

That patch unconditionally applies ICE_CONTROLLING as the role. What about when Asterisk is the offeree instead of the offerer?

By: Marko Seidenglanz (markose) 2014-02-27 11:14:38.326-0600

That should of course be considered.

By: Rusty Newton (rnewton) 2014-04-08 11:40:26.139-0500

Marko, see the updated [Code Review workflow|https://wiki.asterisk.org/wiki/display/AST/Code+Review] and go ahead and post your patch on reviewboard, then edit this issue and add the reviewboard url in the proper field. Thanks!

By: Marko Seidenglanz (markose) 2014-04-16 03:47:33.648-0500

Done

By: Matt Jordan (mjordan) 2014-06-26 13:46:39.980-0500

Per my comment on https://reviewboard.asterisk.org/r/3454/, the patch for ASTERISK-22961 includes the fix for who is the controller of the ICE negotiation. Unlike the patch that was proposed here, it does not unilaterally assume that Asterisk is the non-controller, and will still use ICE-CONTROLLING when it should.

Because the patch for this issue is being actively worked and tested on ASTERISK-22961, I'm going to close out this issue as a duplicate of ASTERISK-22961.