Prevent chan_sip from sending duplicate BYEs.
authorMark Michelson <mmichelson@digium.com>
Tue, 15 Oct 2013 15:26:06 +0000 (15:26 +0000)
committerMark Michelson <mmichelson@digium.com>
Tue, 15 Oct 2013 15:26:06 +0000 (15:26 +0000)
commit2c927b871f570c9724f9957fb17d961ee9ecb45c
treea46b8cb85a6679fe04d2f2ff0b21b4e6980a40cc
parent55e15a2cc92b9c90dbe0d97d20e5a89430016deb
Prevent chan_sip from sending duplicate BYEs.

When a 200 OK for an initial INVITE is received, we were doing
the right thing by ACKing and sending an immediate BYE. However,
we also were doing the wrong thing and queuing an answer frame,
thus causing the call to be answered. This would cause the call
to be hung up by the channel thread, thus resulting in a second
BYE being sent out.

In this fix, I also have set the hangupcause to be correct since
the initial BYE being sent by Asterisk had an unknown hangup
cause. I have changed to using "Bearer capabilty not available"
since the call was hung up due to an SDP offer/answer error.

(closes issue ASTERISK-22621)
reported by Kinsey Moore
........

Merged revisions 400970 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 400971 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 400984 from http://svn.asterisk.org/svn/asterisk/branches/12

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@400998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
channels/chan_sip.c