]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Restore Dial, Queue, and FollowMe 'I' option support.
authorRichard Mudgett <rmudgett@digium.com>
Fri, 13 Sep 2013 22:05:07 +0000 (22:05 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Fri, 13 Sep 2013 22:05:07 +0000 (22:05 +0000)
commit74c97812735606c657768fe8c440544b5fdbff9d
tree93255232e688457292f4f46fc8b2f71b8ab73123
parentfcde3a532000344c70c490bb53bd5533350c75a8
Restore Dial, Queue, and FollowMe 'I' option support.

The Dial, Queue, and FollowMe applications need to inhibit the bridging
initial connected line exchange in order to support the 'I' option.

* Replaced the pass_reference flag on ast_bridge_join() with a flags
parameter to pass other flags defined by enum ast_bridge_join_flags.

* Replaced the independent flag on ast_bridge_impart() with a flags
parameter to pass other flags defined by enum ast_bridge_impart_flags.

* Since the Dial, Queue, and FollowMe applications are now the only
callers of ast_bridge_call() and ast_bridge_call_with_flags(), changed the
calling contract to require the initial COLP exchange to already have been
done by the caller.

* Made all callers of ast_bridge_impart() check the return value.  It is
important.  As a precaution, I also made the compiler complain now if it
is not checked.

* Did some cleanup in parking_tests.c as a result of checking the
ast_bridge_impart() return value.

An independent, but associated change is:
* Reduce stack usage in ast_indicate_data() and add a dropping redundant
connected line verbose message.

(closes issue ASTERISK-22072)
Reported by: Joshua Colp

Review: https://reviewboard.asterisk.org/r/2845/

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@399136 65c4cc65-6c06-0410-ace0-fbb531ad65f3
20 files changed:
apps/app_agent_pool.c
apps/confbridge/conf_chan_announce.c
channels/chan_sip.c
include/asterisk/bridge.h
include/asterisk/bridge_channel.h
include/asterisk/features.h
main/bridge.c
main/bridge_basic.c
main/bridge_channel.c
main/channel.c
main/core_local.c
main/core_unreal.c
main/features.c
res/parking/parking_applications.c
res/parking/parking_bridge_features.c
res/parking/parking_tests.c
res/res_pjsip_refer.c
res/stasis/control.c
tests/test_cdr.c
tests/test_cel.c