Skip to content
Snippets Groups Projects
Commit c5f5c241 authored by Richard Mudgett's avatar Richard Mudgett
Browse files

Merged revisions 288194 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r288194 | rmudgett | 2010-09-21 19:06:21 -0500 (Tue, 21 Sep 2010) | 40 lines
  
  Merged revisions 288193 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r288193 | rmudgett | 2010-09-21 19:03:37 -0500 (Tue, 21 Sep 2010) | 33 lines
    
    Merged revisions 288192 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r288192 | rmudgett | 2010-09-21 18:55:58 -0500 (Tue, 21 Sep 2010) | 26 lines
      
      In chan_iax2.c:schedule_delivery() calls ast_bridged_channel() on an unlocked channel.
      
      Near the beginning of schedule_delivery(), ast_bridged_channel() is called
      on iaxs[fr->callno]->owner.  However, the channel is not locked, which can
      result in ast_bridged_channel() crashing should owner->tech change to a
      technology that doesn't implement bridged_channel.
      
      I also fixed the other calls to ast_bridged_channel() in chan_iax2.c since
      the owner lock was not held there either.
      
      Converted the existing channel deadlock avoidance to use
      iax2_lock_owner().  Using the new function simplified some awkward code.
      
      In the process of fixing the locking on ast_bridged_channel(), I also
      found a memory leak in socket_process() for v1.6.2 and v1.8.  The local
      struct variable ies.vars is not freed on early/abnormal function exits.
      
      (closes issue #17919)
      Reported by: rain
      Patches:
            issue17919_v1.4.patch uploaded by rmudgett (license 664)
            issue17919_w_leak_v1.6.2.patch uploaded by rmudgett (license 664)
            issue17919_w_leak_v1.8.patch uploaded by rmudgett (license 664)
      
      Review: https://reviewboard.asterisk.org/r/926/
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@288195 65c4cc65-6c06-0410-ace0-fbb531ad65f3
parent 949e81e6
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment