]> git.ipfire.org Git - thirdparty/asterisk.git/commit
bridge: When performing a blonde transfer update connected line information. 41/641/2
authorJoshua Colp <jcolp@digium.com>
Wed, 10 Jun 2015 23:28:26 +0000 (20:28 -0300)
committerJoshua Colp <jcolp@digium.com>
Thu, 11 Jun 2015 22:02:25 +0000 (19:02 -0300)
commitdbb067279e7d7555c5090546572a0d01f796fe55
tree7c234f6d9e1d3dfd483d5c63a97d05a0796e4f3b
parent006930ee51919ee47abe0f7c7a8469cff0d31e9f
bridge: When performing a blonde transfer update connected line information.

When performing a blonde transfer the code uses the old masquerade
mechanism to move a channel around. As a result of this certain information,
such as connected line, is moved between the channels involved. Upon
completion of the move a frame is queued which is supposed to update the
connected line information on the channel. This does not occur as the
code considers it a redundant update since the masquerade operation
updated the channel (but did not inform it of the new connected line
information). The code also does not queue a connected line update
to be handled by the thread handling the channel. Without this any
other channel that may be loosely involved does not know it is
talking to a different caller.

This change does the following to resolve this:

1. The indicated connected line information is cleared upon
completion of the masquerade operation when doing a blonde transfer.
This prevents the connected line update from being considered
redundant.

2. A connected line update frame is now queued upon the completion
of the masquerade operation so any other channel loosely involved
knows that there is a different caller.

ASTERISK-25157 #close
Reported by: Joshua Colp

Change-Id: Ibb8798184a1dab3ecd35299faecc420034adbf20
main/bridge_channel.c