Merged revisions 312509 via svnmerge from
authorRichard Mudgett <rmudgett@digium.com>
Fri, 1 Apr 2011 23:17:05 +0000 (23:17 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Fri, 1 Apr 2011 23:17:05 +0000 (23:17 +0000)
commit6826b083ec4602637e367e41944946580888a1ee
tree853789c3f25f97f8a017e97cf986aaa720178e67
parent75594e6e4aee1e0b8abaa4e668ba15ac5c34eb86
Merged revisions 312509 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r312509 | rmudgett | 2011-04-01 18:15:42 -0500 (Fri, 01 Apr 2011) | 22 lines

  When a call going out an NT-PTMP port gets rejected, Asterisk crashes.

  If a call is sent to an ISDN phone that rejects the call with
  RELEASE_COMPLETE(cause: call reject(21), or busy(17)) Asterisk crashes.

  I could not get my setup to crash.  However, I could see the possibility
  from a race condition between queuing an AST_CONTROL_BUSY to the core and
  then queueing an AST_CONTROL_HANGUP.  If the AST_CONTROL_BUSY is processed
  before the AST_CONTROL_HANGUP is queued, the ast_channel could be
  destroyed out from under chan_misdn.

  Avoid this particular crash scenario by not queueing the
  AST_CONTROL_HANGUP if the AST_CONTROL_BUSY was queued.

  (closes issue #18408)
  Reported by: wimpy
  Patches:
        issue18408_v1.8.patch uploaded by rmudgett (license 664)
  Tested by: rmudgett, wimpy

  JIRA SWP-2679
........

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