[asterisk-dev] [Code Review] 2721: bridge_channels: Add support for the lonely flag
jrose
reviewboard at asterisk.org
Tue Aug 6 12:37:51 CDT 2013
> On Aug. 1, 2013, 4:04 p.m., David Lee wrote:
> > /trunk/main/bridge_channel.c, lines 1325-1330
> > <https://reviewboard.asterisk.org/r/2721/diff/1/?file=43333#file43333line1325>
> >
> > bridge_channel_internal_pull() and bridge_channel_dissolve_check() are co-recursive. The code might actually work, just accidentally.
> >
> > The internal_pull() function removes other from bridge->channels, which causes the loop to terminate early. The loop only pulls the first channel from the bridge.
> >
> > But since internal_pull() calls dissolve_check(), it will recursively pull the first channel from the bridge until all the channels have been removed.
> >
> > With enough lonely channels in a bridge, this could blow the stack.
- jrose
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/2721/#review9285
-----------------------------------------------------------
On July 31, 2013, 5:31 p.m., jrose wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/2721/
> -----------------------------------------------------------
>
> (Updated July 31, 2013, 5:31 p.m.)
>
>
> Review request for Asterisk Developers, David Lee, Matt Jordan, and rmudgett.
>
>
> Bugs: ASTERISK-22117
> https://issues.asterisk.org/jira/browse/ASTERISK-22117
>
>
> Repository: Asterisk
>
>
> Description
> -------
>
> Channels with the lonely flag are supposed to leave a bridge if all of the channels in that bridge are also lonely at the time of a channel dissolving.
> I also added this flag to ARI play and record on bridge channels.
>
>
> Diffs
> -----
>
> /trunk/main/core_unreal.c 395852
> /trunk/res/ari/resource_bridges.c 395852
> /trunk/include/asterisk/core_unreal.h 395852
> /trunk/main/bridge_channel.c 395852
>
> Diff: https://reviewboard.asterisk.org/r/2721/diff/
>
>
> Testing
> -------
>
> Tested what happens to channels when a non-lonely channel leaves with and without the presence of non-lonely channels.
> If only lonely channels were left, they hung up. This did produce an ARI playback error since the channel playback was interrupted.
> If non-lonely channels were left, nothing would happen as anticipated.
>
>
> Thanks,
>
> jrose
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20130806/01b08a28/attachment.htm>
More information about the asterisk-dev
mailing list