[asterisk-dev] [Code Review] Revert contantssrc change in favor of a more focused fix

Terry Wilson twilson at digium.com
Fri Mar 5 00:55:13 CST 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/540/
-----------------------------------------------------------

(Updated 2010-03-05 00:55:13.763880)


Review request for Asterisk Developers and Russell Bryant.


Changes
-------

Thanks, Kevin. I've tried to implement the strategy that was suggested and it appears to work and seems to not leak anything according to MALLOC_DEBUG. There may be a better way of handling the frame list stuff (my first time working with them), so let me know if it needs some reworking.


Summary
-------

This change basically reverts the change reviewed in https://reviewboard.asterisk.org/r/374/ and instead limits the updating of the RTP synchronization source to only those times when we detect that the other side of the conversation has changed the ssrc.

The problem is that SRCUPDATE control frames are sent many times where we don't want a new ssrc, including whenever Asterisk has to send DTMF in a normal bridge. This is also not the first time that this mistake has been made. The initial implementation of the ast_rtp_new_source function also changed the ssrc--and then it was removed because of this same issue. Then, we put it back in again to fix a different issue. Instead, I think we should make a very limited change and just update the ssrc when we see it change.

This issue affects mantis issues 5413 (srtp doesn't like the ssrc changing), 15642 (sonus dtmf), 16292 (Exchange UM dtmf), and probably 16438 and 16714.


Diffs (updated)
-----

  /trunk/channels/chan_sip.c 244504 
  /trunk/include/asterisk/rtp_engine.h 244504 
  /trunk/res/res_rtp_asterisk.c 244504 

Diff: https://reviewboard.asterisk.org/r/540/diff


Testing
-------

So far...it compiles. I'm trying to devise a simple way to replicate the original issue which was a reinvite sent to asterisk which results in an ssrc change in the rtp sent to asterisk.


Thanks,

Terry




More information about the asterisk-dev mailing list