[asterisk-dev] [Code Review] 3890: chan_iax2: Several media format fixes.

Matt Jordan reviewboard at asterisk.org
Wed Aug 6 09:39:08 CDT 2014


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


There are numerous formatting changes that were made in this patch that have little to do with the intent of the code change. In the future, it'd be nice if these were done separately, as it makes it far harder to review the patch when you have to wade through a lot of formatting modifications.


/trunk/channels/iax2/codec_pref.c
<https://reviewboard.asterisk.org/r/3890/#comment23443>

    Snide comments in code aren't really necessary. Just note that it is a place holder.
    
    The fact that IAX2 is tightly coupled to the implementation of things within Asterisk is a problem with IAX2, and not with the poor people who tried to improve Asterisk's format/codec capabilities.


- Matt Jordan


On Aug. 5, 2014, 5:51 p.m., rmudgett wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3890/
> -----------------------------------------------------------
> 
> (Updated Aug. 5, 2014, 5:51 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-24150
>     https://issues.asterisk.org/jira/browse/ASTERISK-24150
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> * Fixed the iax.conf bandwidth option.  This is the root cause of
> ASTERISK-24150.
> 
> * Added checks in iax2_request() to ensure that there are actual formats
> requested for the new channel to prevent any more fracks from issues like
> ASTERISK-24150.  This is a consequence of the iax.conf bandwidth option
> not working.
> 
> * Fixed struct iax2_codec_pref.order member size mismatch issue when
> converting to and from the codec preference order list passed over the
> wire.  In addition the values sent over the wire are now compatible with
> previous Asterisk versions.
> 
> * Fixed several issues dealing with the struct iax2_codec_pref members.
> Off-by-one, array limit errors, and the order/framing members always need
> to be updated together.
> 
> * Made iax2_request() setup the channel's native format preference order
> according to the user's wishes.  The new media format strategy needs the
> order specified earler.
> 
> * Fixed usage of ast_format_compatibility_bitfield2format().  The function
> can return NULL if the bitfield was not associated with a function.
> 
> * Deleted dead code iax2_codec_pref_getsize() and
> iax2_codec_pref_setsize().
> 
> * Made iax2_parse_allow_disallow() and iax2_codec_pref_string() call
> iax2_codec_pref_to_cap() instead of inlining it.
> 
> * Made IAX_CAPABILITY_MEDBANDWIDTH, IAX_CAPABILITY_LOWBANDWIDTH, and
> IAX_CAPABILITY_LOWFREE constants again as they were in Asterisk v1.8.
> 
> * Renamed prefs to prefs_global so it won't get confused with the local
> pref versions.
> 
> * Fixed too small buffer in handle_cli_iax2_show_peer().
> 
> * Fixed ast_cli() calls in handle_cli_iax2_show_peer() to output complete
> lines.
> 
> * Changed struct create_addr_info.prefs to be struct iax2_codec_pref as an
> optimization so iax2_request() and iax2_call() do less work.
> 
> * Fixed a potential deadlock in ast_iax2_new() on an off-nominal path when
> the pbx could not get started.
> 
> * Made set_config() setup a local prefs list along side the local
> capability format bitfield.  Once the config is loaded, then the local
> copies are put into the global versions.
> 
> * Fix unininialized codec_buf in function_iaxpeer().
> 
> 
> Diffs
> -----
> 
>   /trunk/main/format_compatibility.c 420087 
>   /trunk/include/asterisk/format_compatibility.h 420087 
>   /trunk/channels/iax2/include/format_compatibility.h 420087 
>   /trunk/channels/iax2/include/codec_pref.h 420087 
>   /trunk/channels/iax2/format_compatibility.c 420087 
>   /trunk/channels/iax2/codec_pref.c 420087 
>   /trunk/channels/chan_iax2.c 420087 
> 
> Diff: https://reviewboard.asterisk.org/r/3890/diff/
> 
> 
> Testing
> -------
> 
> * The 12 testsuite tests tagged with iax2 pass.
> 
> * The iax.conf bandwidth option is now functional and no longer causes a frack when a call is made.
> 
> * The CLI "iax2 show peer" has enough buffer space to generate a longer codec list for the configured codecs header.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140806/366b14f4/attachment-0001.html>


More information about the asterisk-dev mailing list