]> git.ipfire.org Git - thirdparty/asterisk.git/commit
res_pjsip_refer/session: Calls dropped during transfer
authorKevin Harwell <kharwell@digium.com>
Tue, 13 Jun 2017 19:17:29 +0000 (14:17 -0500)
committerKevin Harwell <kharwell@digium.com>
Tue, 13 Jun 2017 19:28:11 +0000 (14:28 -0500)
commit3a8cb4986d1d7dfb73248c042782e0aea5c2a2c1
tree0b4ab91f1df42a03c15a0d743c0ad73ea820e4a4
parent7994914c882874593eb17fdd8c910ee418f44a1b
res_pjsip_refer/session: Calls dropped during transfer

When doing an attended transfer it's possible for the transferer, after
receiving an accepted response from Asterisk, to send a BYE to Asterisk,
which can then be processed before Asterisk has time to start and/or
complete the transfer process. This of course causes the transfer to not
complete successfully, thus dropping the call.

This patch makes it so any BYEs received from the transferer, after the REFER,
that initiate a session end are deferred until the transfer is complete. This
allows the channel that would have otherwise been hung up by Asterisk to
remain available throughout the transfer process.

ASTERISK-27053 #close

Change-Id: I43586db79079457d92d71f1fd993be9a3b409d5a
include/asterisk/res_pjsip_session.h
res/res_pjsip_refer.c
res/res_pjsip_session.c
res/res_pjsip_session.exports.in