Commit Graph

606 Commits

Author SHA1 Message Date
David Vossel
bffa76f003 Merged revisions 231556 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r231556 | dvossel | 2009-11-30 12:55:07 -0600 (Mon, 30 Nov 2009) | 11 lines
  
  app_queue crashes randomly, often during call-transfers
  
  This patch adds a ref to the queue_ent object's parent call_queue
  in queue_exec() so the call_queue won't be destroyed
  while the the queue_ent still holds a pointer to it.
  
  (closes issue 0015686)
  Tested by: dvossel, aragon
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@231560 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-30 18:58:05 +00:00
Kevin P. Fleming
c1f8e9ba70 Merged revisions 222176 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r222176 | kpfleming | 2009-10-05 20:24:24 -0500 (Mon, 05 Oct 2009) | 27 lines
  
  Recorded merge of revisions 222152 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r222152 | kpfleming | 2009-10-05 20:16:36 -0500 (Mon, 05 Oct 2009) | 20 lines
    
    Fix ao2_iterator API to hold references to containers being iterated.
    
    See Mantis issue for details of what prompted this change.
    
    Additional notes:
    
    This patch changes the ao2_iterator API in two ways: F_AO2I_DONTLOCK
    has become an enum instead of a macro, with a name that fits our
    naming policy; also, it is now necessary to call
    ao2_iterator_destroy() on any iterator that has been
    created. Currently this only releases the reference to the container
    being iterated, but in the future this could also release other
    resources used by the iterator, if the iterator implementation changes
    to use additional resources.
    
    (closes issue #15987)
    Reported by: kpfleming
    
    Review: https://reviewboard.asterisk.org/r/383/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@222185 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-06 01:33:01 +00:00
Tilghman Lesher
2973257add Merged revisions 217990 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r217990 | tilghman | 2009-09-10 18:54:51 -0500 (Thu, 10 Sep 2009) | 10 lines
  
  Merged revisions 217989 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r217989 | tilghman | 2009-09-10 18:52:22 -0500 (Thu, 10 Sep 2009) | 3 lines
    
    Don't ring another channel, if there's not enough time for a queue member to answer.
    (Fixes AST-228)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@218051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-11 05:58:58 +00:00
Matthew Nicholson
15e4657563 Merged revisions 211957 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r211957 | mnicholson | 2009-08-12 18:14:36 -0500 (Wed, 12 Aug 2009) | 17 lines
  
  Merged revisions 211953 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r211953 | mnicholson | 2009-08-12 18:04:02 -0500 (Wed, 12 Aug 2009) | 10 lines
    
    This patch adds additional checking when generating queue log TRANSFER events.
    
    The additional checks prevent generation of false TRANSFER events in certain situations.
    
    (closes issue #14536)
    Reported by: aragon
    Patches:
          queue-log-xfer-fix1.diff uploaded by mnicholson (license 96)
    Tested by: aragon, mnicholson
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@211960 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-12 23:17:12 +00:00
Tilghman Lesher
2662264c44 AST-2009-005
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@211551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-10 19:25:03 +00:00
Tilghman Lesher
4c7692bd15 Merged revisions 211040 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r211040 | tilghman | 2009-08-07 13:17:41 -0500 (Fri, 07 Aug 2009) | 21 lines
  
  Merged revisions 211038 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r211038 | tilghman | 2009-08-07 13:16:28 -0500 (Fri, 07 Aug 2009) | 14 lines
    
    QUEUE_MEMBER_LIST _really_ wants the interface name, not the membername.
    
    This is a partial revert of revision 82590, which was an attempted cleanup,
    but in reality, it broke QUEUE_MEMBER_LIST, which has always been intended
    as a method by which component interfaces could be queried from the queue.
    Membername isn't useful here, because that field cannot be used to obtain
    further information about the member.  See the documentation on
    QUEUE_MEMBER_LIST, RemoveQueueMember, QUEUE_MEMBER_PENALTY, and the various
    AMI commands which take a member argument for further justification.
    (closes issue #15664)
     Reported by: rain
     Patches: 
           app_queue-queue_member_list.diff uploaded by rain (license 327)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@211044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-07 18:18:29 +00:00
Mark Michelson
a564e9b944 Blocked revisions 208622 via svnmerge
........
  r208622 | mmichelson | 2009-07-24 14:24:28 -0500 (Fri, 24 Jul 2009) | 16 lines
  
  Don't impose an arbitrary limit on member lines in queues.conf
  
  I know what some of you are thinking: "UGH! Mark, why are you using
  ast_strdup and ast_free for the string when you can just use ast_strdupa
  and let the memory free itself?! Have the bats been chewing on your brain
  again?"
  
  Based on past experiences, I don't like using ast_strdupa inside a loop.
  It's a good way to potentially exhaust stack space. Also, since this only
  happens when reloading queues, I don't think that heap allocations and
  frees are going to be a huge problem.
  
  (closes issue #15559)
  Reported by: amorsen
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@208655 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-24 19:33:54 +00:00
Mark Michelson
f05e03dc9d Merged revisions 205350 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r205350 | mmichelson | 2009-07-08 14:26:55 -0500 (Wed, 08 Jul 2009) | 20 lines
  
  Merged revisions 205349 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r205349 | mmichelson | 2009-07-08 14:26:13 -0500 (Wed, 08 Jul 2009) | 14 lines
    
    Prevent phantom calls to queue members.
    
    If a caller were to hang up while a periodic announcement or position
    were being said, the return value for those functions would incorrectly
    indicate that the caller was still in the queue. With these changes,
    the problem does not occur.
    
    (closes issue #14631)
    Reported by: latinsud
    Patches:
          queue_announce_ghost_call2.diff uploaded by latinsud (license 745)
    	  (with small modification from me)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@205351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-08 19:27:26 +00:00
Tilghman Lesher
4892be94a6 Recorded merge of revisions 195370 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r195370 | tilghman | 2009-05-18 15:52:33 -0500 (Mon, 18 May 2009) | 15 lines
  
  Recorded merge of revisions 195366 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r195366 | tilghman | 2009-05-18 15:24:13 -0500 (Mon, 18 May 2009) | 8 lines
    
    Add a similar dependency on SMDI for voicemail as already exists for ADSI.
    (closes issue #14846)
     Reported by: pj
     Patches: 
           20090413__bug14846__1.4.diff.txt uploaded by tilghman (license 14)
           20090507__issue14846__1.6.0.diff.txt uploaded by tilghman (license 14)
           20090507__issue14846__1.6.1.diff.txt uploaded by tilghman (license 14)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@195371 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-18 20:53:37 +00:00
Matthew Nicholson
10a7f969fe Merged revisions 194057 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r194057 | mnicholson | 2009-05-12 17:32:13 -0500 (Tue, 12 May 2009) | 22 lines
  
  Merged revisions 194028 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r194028 | mnicholson | 2009-05-12 17:15:45 -0500 (Tue, 12 May 2009) | 16 lines
    
    This change modifies app_queue to properly generate CDR records in failure
    situations.
    
    This involves setting a proper cdr disposition coresponding to the given
    failure condition and ensuring the proper information is stored in the cdr
    record.
    
    (closes issue #13691)
    Reported by: dferrer
    Tested by: mnicholson
    
    (closes issue #13637)
    Reported by: atis
    Tested by: atis
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@194063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-12 23:03:58 +00:00
Sean Bright
c87521c295 Fix a crash in app_queue with very long member lists.
A user reported via #asterisk that with very long lists of members, a crash
occurs in ast_strdupa, so just use a single buffer and ast_copy_string instead
of stack allocating copys of each interface name.

(Related to revision 191041 in branches/1.4)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@191424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-01 15:58:40 +00:00
Mark Michelson
d8775d20f2 Merged revisions 190622 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r190622 | mmichelson | 2009-04-27 11:26:14 -0500 (Mon, 27 Apr 2009) | 3 lines
  
  Update warning message to not have pipes and contain all options.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@190623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-27 16:27:09 +00:00
Mark Michelson
0e5b39e00c Merged revisions 188470 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r188470 | mmichelson | 2009-04-14 18:28:13 -0500 (Tue, 14 Apr 2009) | 3 lines
  
  Fix a couple of queue member reference leaks.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@188471 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-14 23:28:39 +00:00
Mark Michelson
c8e4eab26d Merged revisions 188032 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r188032 | mmichelson | 2009-04-13 09:17:56 -0500 (Mon, 13 Apr 2009) | 6 lines
  
  Set all queue variables on both the caller and member channels.
  
  This allows for the variables to be accessed if a member macro is run.
  Thanks to Grigoriy Puzankin for bringing this up on the -dev list.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@188037 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-13 14:20:14 +00:00
Mark Michelson
a64e0f70ea Merged revisions 185600 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r185600 | mmichelson | 2009-03-31 17:02:48 -0500 (Tue, 31 Mar 2009) | 12 lines
  
  Merged revisions 185599 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r185599 | mmichelson | 2009-03-31 17:00:01 -0500 (Tue, 31 Mar 2009) | 6 lines
    
    Fix crash that would occur if an empty member was specified in queues.conf.
    
    (closes issue #14796)
    Reported by: pida
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@185601 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-31 22:03:55 +00:00
Russell Bryant
cd84ad1fc0 Merged revisions 185261 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r185261 | russell | 2009-03-31 09:53:45 -0500 (Tue, 31 Mar 2009) | 5 lines

Don't free() an astobj2 object.

(closes issue #14672)
Reported by: makoto

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@185262 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-31 14:56:27 +00:00
Mark Michelson
6ee6d5edac Merged revisions 185072 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r185072 | mmichelson | 2009-03-30 11:26:48 -0500 (Mon, 30 Mar 2009) | 45 lines
  
  Merged revisions 185031 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r185031 | mmichelson | 2009-03-30 11:17:35 -0500 (Mon, 30 Mar 2009) | 39 lines
    
    Fix queue weight behavior so that calls in low-weight queues are not inappropriately blocked.
    
    (This is copied and pasted from the review request I made for this patch)
    
    Asterisk has some odd behavior when queue weights are used. The current logic used when
    potentially calling a queue member is:
    
    If the member we are going to call is part of another queue and _that other queue has any 
    callers in it_ and has a higher weight than the queue we are calling from, then don't try 
    to contact that member. The issue here is what I have marked with underscores. If the 
    higher-weighted queue has any callers in it at all, then the queue member will be unreachable 
    from the lower-weighted queue. This has the potential to be really really bad if using a 
    queue strategy, such as leastrecent or fewestcalls, with the potential to call the same 
    member repeatedly.
    
    The fix proposed by garychen on issue 13220 is very simple and, as far as I can see, works 
    well for this situation. With this set of changes, the logic used becomes:
    
    If the member we are going to call is part of another queue, the other queue has a higher 
    weight than the queue we are calling from, and the higher weight queue has at least as many 
    callers as available members, then do not try to contact the queue member. If the higher 
    weighted queue has fewer callers than available members, then there is no reason to deny 
    the call to this member since the other queue can afford to spare a member.
    
    Since the fix involved writing a generic function for determining the number of available 
    members in the queue, I also modified the is_our_turn function to make use of the new 
    num_available_members function to determine if it is our turn to try calling a member. There 
    is one small behavior change. Before writing this patch, if you had autofill disabled, then 
    if you were the head caller in a queue, you would automatically be told that it was your 
    turn to try calling a member. This did not take into account whether there were actually any 
    queue members available to take the call. Now we actually make sure there is at least one 
    member available to take the call if autofill is disabled.
    
    (closes issue #13220)
    Reported by: garychen
    
    Review: http://reviewboard.digium.com/r/202/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@185087 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-30 16:40:26 +00:00
Mark Michelson
bce77e2674 Merged revisions 183244 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r183244 | mmichelson | 2009-03-19 13:10:34 -0500 (Thu, 19 Mar 2009) | 16 lines
  
  Fix a memory leak associated with queues.
  
  For every attempt that app_queue made to place an outbound call to a queue member,
  we would allocate a queue_end_bridge structure. When the bridge for the call had
  completed, we would free the structure. Unfortunately not all call attempts actually
  end up bridged to a member, so we need to be more selective of when to allocate
  the structure. With this change, the allocation occurs in an area where we can
  guarantee that the call will be bridged.
  
  (closes issue #14680)
  Reported by: caspy
  Patches:
        14680.patch uploaded by mmichelson (license 60)
  Tested by: caspy
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@183245 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-19 18:11:16 +00:00
Mark Michelson
00cfcfaa62 Merged revisions 182121 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r182121 | mmichelson | 2009-03-13 16:26:20 -0500 (Fri, 13 Mar 2009) | 6 lines
  
  Change faulty comparison used when announcing average hold minutes and seconds
  
  (closes issue #14227)
  Reported by: caspy
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@182122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-13 21:26:47 +00:00
Mark Michelson
82d3dc386d Merged revisions 181846 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r181846 | mmichelson | 2009-03-12 16:43:51 -0500 (Thu, 12 Mar 2009) | 3 lines
  
  Run the macro on the queue member's channel when he answers, not the caller's channel.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@181848 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-12 21:44:57 +00:00
Mark Michelson
d24e3e05bc Merged revisions 180007 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180007 | mmichelson | 2009-03-03 16:49:07 -0600 (Tue, 03 Mar 2009) | 22 lines
  
  Merged revisions 180006 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180006 | mmichelson | 2009-03-03 16:48:18 -0600 (Tue, 03 Mar 2009) | 17 lines
    
    Clarify some documentation of queues.conf.sample
    
    It had always been possible to explicitly specify a "blank"
    value for a sound file in queues.conf and have no sound played
    back. The problem with this is that it would result in some ugly
    CLI warnings from file.c.
    
    This commit introduces a check when playing a file in app_queue
    to see if the name of the file is zero-length and return early if
    that is the case. Also, the ability to specify the blank sound
    files in queues.conf is now mentioned more clearly in queues.conf.sample
    
    (closes issue #14227)
    Reported by: caspy
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180008 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 22:49:32 +00:00
Mark Michelson
3cb51f0127 Fix a memory leak when updating a realtime member field.
This was discovered while looking at issue #14353



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179971 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 21:43:09 +00:00
Mark Michelson
eb9e2f2c4e Add error checking when updating the "paused" field of a realtime queue member.
This code already existed in trunk and 1.6.1, but was not in 1.6.0 prior to
this commit.


(closes issue #14338)
Reported by: fiddur
Patches:
      14338.patch uploaded by mmichelson (license 60)
Tested by: fiddur



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179222 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-01 22:07:09 +00:00
Mark Michelson
b8356f9a94 Merged revisions 174948 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r174948 | mmichelson | 2009-02-11 17:03:08 -0600 (Wed, 11 Feb 2009) | 35 lines
  
  Fix odd "thank you" sound playing behavior in app_queue.c
  
  If someone has configured the queue to play an position or holdtime
  announcement, then it is odd and potentially unexpected to hear a 
  "Thank you for your patience" sound when no position or holdtime
  was actually announced.
  
  This fixes the announcement so that the "thanks" sound is only played
  in the case that a position or holdtime was actually announced.
  
  There is a way that the "thank you" sound can be played without a
  position or holdtime, and that is to set announce-frequency to a value
  but keep announce-position and announce-holdtime both turned off.
  
  (closes issue #14227)
  Reported by: caspy
  Patches:
        14227_v3.patch uploaded by putnopvut (license 60)
  Tested by: caspy
  ................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174949 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-11 23:04:10 +00:00
Mark Michelson
a31c0961ab Merged revisions 173693 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173693 | mmichelson | 2009-02-05 14:30:45 -0600 (Thu, 05 Feb 2009) | 20 lines

Merged revisions 173692 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173692 | mmichelson | 2009-02-05 14:29:09 -0600 (Thu, 05 Feb 2009) | 12 lines

Fix situations where queue members could be autopaused unexpectedly

Specifically, this patch prevents us from autopausing members when
we receive a busy or congestion frame from them.

(closes issue #14376)
Reported by: fiddur
Patches:
      14376.patch uploaded by putnopvut (license 60)
Tested by: fiddur


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173694 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 20:34:44 +00:00
Mark Michelson
f94677ac39 Merged revisions 173507 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r173507 | mmichelson | 2009-02-04 16:16:19 -0600 (Wed, 04 Feb 2009) | 7 lines

Fix some areas where the incorrect interface was passed to ast_device_state

I swear it feels like I already did this once...

(closes issue #14359)
Reported by: francesco_r

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 22:23:52 +00:00
Mark Michelson
344dfe6f84 Merged revisions 171618 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r171618 | mmichelson | 2009-01-27 13:30:54 -0600 (Tue, 27 Jan 2009) | 24 lines

Fix queue crashes that would occur after the calling channel was masqueraded.

The data passed to the end_bridge_callback was assumed to be data which was
still stack'd. The problem was that with some call features, attended transfers
in particular, a new bridge thread is started once the feature completes, meaning
that when the end_bridge_callback is called, the end_bridge_callback_data was
invalid.

To fix this problem, there are two measures taken

1. Instead of pointing to stacked data, we now used heap-allocated data for
passing to the end_bridge_callback in app_queue
2. Since bridges can end multiple times on a single logical call, we wait until
the final bridge is broken to actually set any queue variables. This is accomplished
through reference-counting and the use of an end_bridge_callback_data_fixup function
in app_queue.c

(closes issue #14260)
Reported by: ccesario
Patches:
      14260.patch uploaded by putnopvut (license 60)
Tested by: ccesario


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@171619 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-27 19:38:27 +00:00
Mark Michelson
827aab8b29 Merged revisions 169611 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r169611 | mmichelson | 2009-01-20 18:33:32 -0600 (Tue, 20 Jan 2009) | 22 lines

Fix device state parsing issues for channel names with multiple slashes

The fix being applied is a bit different for trunk and the 1.6.X branches.
For trunk, we only wish to strip off the characters beyond the second slash
if the channel is a Local channel (i.e. we are removing the /n from the device
name). Other channel technologies with multiple slashes (e.g. DAHDI) need the
information after the second slash in order to get the proper device state
information.

In addition to this fix, the 1.6.X branches are receiving a much more important
fix as well. The problem in 1.6.X is that the member's device name was being directly
changed instead of having a copy changed. This meant that we would strip off the
second slash and trailing characters and then leave the member's device name like
that permanently thereafter.

(closes issue #14014)
Reported by: kebl0155
Patches:
      14014_number2.patch uploaded by putnopvut (license 60)
Tested by: kebl0155


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@169612 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-21 00:35:05 +00:00
Mark Michelson
b40ebef036 Merged revisions 168629 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r168629 | mmichelson | 2009-01-14 18:14:17 -0600 (Wed, 14 Jan 2009) | 24 lines

Merged revisions 168628 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r168628 | mmichelson | 2009-01-14 18:11:01 -0600 (Wed, 14 Jan 2009) | 16 lines

Fix some crashes from bad datastore handling in app_queue.c

* The queue_transfer_fixup function was searching for and removing
  the datastore from the incorrect channel, so this was fixed.

* Most datastore operations regarding the queue_transfer datastore
  were being done without the channel locked, so proper channel locking
  was added, too.

(closes issue #14086)
Reported by: ZX81
Patches:
      14086v2.patch uploaded by putnopvut (license 60)
Tested by: ZX81, festr


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@168630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-15 00:14:48 +00:00
Mark Michelson
788f3a8fa5 Merged revisions 166861 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r166861 | mmichelson | 2008-12-29 12:04:52 -0600 (Mon, 29 Dec 2008) | 14 lines

Update app_queue to deal with the removal of AST_PBX_KEEPALIVE

When placing a call to a queue which ran a gosub on the member's
channel, Asterisk would crash every time, stemming from the fact
that the member's channel was being hung up unexpectedly when the
Gosub completed. The necessary change was pretty much copied and
pasted from app_dial's similar changes made last week.

I also took the opportunity to change a LOG_DEBUG message in
app_dial to use ast_debug. I am guessing this was due to a direct
merge from 1.4 that was not corrected to use trunk's preferred
syntax.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@166862 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-29 18:15:22 +00:00
Steve Murphy
5d34e0df03 Merged revisions 166665 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

Due to non-symmetrical updating, I had some fairly
interesting conflicts to straighten out in this
release. The changes were such that I was compelled
to run thru all the same tests as trunk, which turned
up some problems, which I fixed. 

................
  r166665 | murf | 2008-12-23 11:13:49 -0700 (Tue, 23 Dec 2008) | 153 lines
  
  Merged revisions 166093 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  In order to merge this 1.4 patch into trunk,
  I had to resolve some conflicts and wait for
  Russell to make some changes to res_agi.
  I re-ran all the tests; 39 calls in all, and
  made fairly careful notes and comparisons: I
  don't want this to blow up some aspect of 
  asterisk; I completely removed the KEEPALIVE
  from the pbx.h decls. The first 3 scenarios
  involving feature park; feature xfer to 700;
  hookflash park to Park() app call all behave
  the same, don't appear to leave hung channels,
  and no crashes.
  
  ........
    r166093 | murf | 2008-12-19 15:30:32 -0700 (Fri, 19 Dec 2008) | 131 lines
    
    This merges the masqpark branch into 1.4
    
    These changes eliminate the need for (and use of)
    the KEEPALIVE return code in res_features.c;
    There are other places that use this result code
    for similar purposes at a higher level, these appear
    to be left alone in 1.4, but attacked in trunk.
    
    The reason these changes are being made in 1.4, is
    that parking ends a channel's life, in some situations,
    and the code in the bridge (and some other places),
    was not checking the result code properly, and dereferencing
    the channel pointer, which could lead to memory corruption
    and crashes.
    
    Calling the masq_park function eliminates this danger 
    in higher levels.
    
    A series of previous commits have replaced some parking calls
    with masq_park, but this patch puts them ALL to rest,
    (except one, purposely left alone because a masquerade
    is done anyway), and gets rid of the code that tests
    the KEEPALIVE result, and the NOHANGUP_PEER result codes.
    
    While bug 13820 inspired this work, this patch does
    not solve all the problems mentioned there.
    
    I have tested this patch (again) to make sure I have
    not introduced regressions. 
    
    Crashes that occurred when a parked party hung up
    while the parking party was listening to the numbers
    of the parking stall being assigned, is eliminated.
    
    These are the cases where parking code may be activated:
    
    1. Feature one touch (eg. *3)
    2. Feature blind xfer to parking lot (eg ##700)
    3. Run Park() app from dialplan (eg sip xfer to 700)
       (eg. dahdi hookflash xfer to 700)
    4. Run Park via manager.
    
    The interesting testing cases for parking are:
    I. A calls B, A parks B
        a. B hangs up while A is getting the numbers announced.
        b. B hangs up after A gets the announcement, but 
           before the parking time expires
        c. B waits, time expires, A is redialed,
           A answers, B and A are connected, after
           which, B hangs up.
        d. C picks up B while still in parking lot.
    
    II. A calls B, B parks A
        a. A hangs up while B is getting the numbers announced.
        b. A hangs up after B gets the announcement, but 
           before the parking time expires
        c. A waits, time expires, B is redialed,
           B answers, A and B are connected, after
           which, A hangs up.
        d. C picks up A while still in parking lot.
    
    Testing this throroughly involves acting all the permutations
    of I and II, in situations 1,2,3, and 4.
    
    Since I added a few more changes (ALL references to KEEPALIVE in the bridge
    code eliimated (I missed one earlier), I retested
    most of the above cases, and no crashes.
    
    H-extension weirdness.
    
    Current h-extension execution is not completely
    correct for several of the cases.
    
    For the case where A calls B, and A parks B, the
    'h' exten is run on A's channel as soon as the park
    is accomplished. This is expected behavior.
    
    But when A calls B, and B parks A, this will be
    current behavior:
    
    After B parks A, B is hung up by the system, and
    the 'h' (hangup) exten gets run, but the channel
    mentioned will be a derivative of A's...
    
    Thus, if A is DAHDI/1, and B is DAHDI/2,
    the h-extension will be run on channel
    Parked/DAHDI/1-1<ZOMBIE>, and the 
    start/answer/end info will be those 
    relating to Channel A.
    
    And, in the case where A is reconnected to
    B after the park time expires, when both parties
    hang up after the joyful reunion, no h-exten
    will be run at all.
    
    In the case where C picks up A from the 
    parking lot, when either A or C hang up,
    the h-exten will be run for the C channel.
    
    CDR's are a separate issue, and not addressed
    here.
    
    As to WHY this strange behavior occurs, 
    the answer lies in the procedure followed
    to accomplish handing over the channel
    to the parking manager thread. This procedure
    is called masquerading. In the process,
    a duplicate copy of the channel is created,
    and most of the active data is given to the
    new copy. The original channel gets its name
    changed to XXX<ZOMBIE> and keeps the PBX
    information for the sake of the original
    thread (preserving its role as a call 
    originator, if it had this role to begin
    with), while the new channel is without
    this info and becomes a call target (a
    "peer").
    
    In this case, the parking lot manager
    thread is handed the new (masqueraded)
    channel. It will not run an h-exten
    on the channel if it hangs up while
    in the parking lot. The h exten will
    be run on the original channel instead,
    in the original thread, after the bridge
    completes.
    
    See bug 13820 for our intentions as
    to how to clean up the h exten behavior.
  
  Review: http://reviewboard.digium.com/r/29/
  
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@166729 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-24 00:52:12 +00:00
Mark Michelson
f9e08bac6d Merged revisions 165318 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r165318 | mmichelson | 2008-12-17 15:17:20 -0600 (Wed, 17 Dec 2008) | 15 lines

Merged revisions 165255 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r165255 | mmichelson | 2008-12-17 14:51:38 -0600 (Wed, 17 Dec 2008) | 7 lines

Fix some memory leaks found while looking at how realtime
configs are handled.

Also cleaned up some coding guidelines violations in app_realtime.c,
mostly related to spacing


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@165322 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-17 21:22:10 +00:00
Mark Michelson
22ccedb314 Merged revisions 164270 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r164270 | mmichelson | 2008-12-15 10:16:47 -0600 (Mon, 15 Dec 2008) | 4 lines

Fix a compile warning and a logic error that could have been bad
for non-realtime queues


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@164271 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-15 16:17:19 +00:00
Mark Michelson
fde29e8939 Merged revisions 164268 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r164268 | mmichelson | 2008-12-15 10:10:43 -0600 (Mon, 15 Dec 2008) | 17 lines

Fix up a few issues with regards to queues

* Fix reference counting used in the __queues_show function
* Add code to be sure that the "queue show" command does not
  print information for a realtime queue which has been deleted
  from the backend
* Add a missing unref to the realtime queue loading function for
  the case where a queue is in the module's container but has been
  deleted from the realtime backend

(closes issue #14033)
Reported by: cristiandimache
Patches:
      14033.patch uploaded by putnopvut (license 60)
Tested by: cristiandimache


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@164269 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-15 16:12:09 +00:00
Terry Wilson
d56bef322c Merged revisions 163873 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r163873 | twilson | 2008-12-12 17:48:26 -0600 (Fri, 12 Dec 2008) | 6 lines
  
  When using realtime queues, app_queue wasn't updating the strategy if it was changed in the realtime backend.  This patch resolves the issue for almost all situations.  It is currently not supported to switch to the linear strategy via realtime since the ao2_container for members will have been set to have multiple buckets and therefore the members would be unordered.
  
  (closes issue #14034)
  Reported by: cristiandimache
  Tested by: otherwiseguy, cristiandimache
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@163874 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-13 00:05:53 +00:00
Mark Michelson
bfbf6f4aac Merged revisions 163085 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r163085 | mmichelson | 2008-12-11 10:47:34 -0600 (Thu, 11 Dec 2008) | 12 lines

Merged revisions 163084 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r163084 | mmichelson | 2008-12-11 10:46:22 -0600 (Thu, 11 Dec 2008) | 4 lines

Revert this cast to long. Using time_t here causes build failures on a 
FreeBSD 32-bit build.


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@163086 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-11 16:49:18 +00:00
Mark Michelson
5826008ffd Merged revisions 163081 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r163081 | mmichelson | 2008-12-11 10:33:16 -0600 (Thu, 11 Dec 2008) | 22 lines

Merged revisions 163080 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r163080 | mmichelson | 2008-12-11 10:24:43 -0600 (Thu, 11 Dec 2008) | 14 lines

Fix a potential crash due to unsafe datastore handling.

This patch also contains a conversion from using long to time_t
for representing times for a queue, as well as some whitespace
fixes.

(closes issue #14060)
Reported by: nivek
Patches:
      datastore_fixup.patch.corrected uploaded by nivek (license 636)
	  with slight modification from me
Tested by: nivek


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@163082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-11 16:40:46 +00:00
Mark Michelson
3d5b168cbc Merged revisions 160626 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r160626 | mmichelson | 2008-12-03 12:37:46 -0600 (Wed, 03 Dec 2008) | 16 lines

Add some safety measures when using gosub, especially when using the options
for app_dial and app_queue to run a gosub when the call is answered.

* Check for the existence of the gosub target in gosub_exec. If it is nonexistent,
  then this will cause errors when we attempt to actually run the gosub, including
  a definite memory leak and potential crashes. Return an error in this situation
* Check the return value of pbx_exec in app_dial and app_queue before attempting
  to actually run the gosub routine. If there was an error, we should not attempt
  to run the gosub.
* Change a '|' to a ',' in app_queue.
* Add some extra curly braces where they had been missing previously.

(closes issue #13548)
Reported by: fiddur


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@160627 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-03 18:41:28 +00:00
Mark Michelson
f2168e3a67 Merged revisions 160555 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r160555 | mmichelson | 2008-12-03 11:07:09 -0600 (Wed, 03 Dec 2008) | 11 lines

When investigating issue #13548, I found that gosub
handling in app_queue was just completely wrong, mostly
because the channel operations being performed were being
done on the incorrect channel.

With this set of changes, a gosub will correctly run on
the answering queue member's channel. There are still crash
issues which occur if there are dialplan syntax errors, so
I cannot yet close the referenced issue.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@160556 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-03 17:09:27 +00:00
Tilghman Lesher
b0bad74445 Merged revisions 152216,152287,152369,152467,152569,152605 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r152216 | tilghman | 2008-10-27 16:34:04 -0500 (Mon, 27 Oct 2008) | 13 lines
  
  Merged revisions 152215 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r152215 | tilghman | 2008-10-27 16:32:00 -0500 (Mon, 27 Oct 2008) | 6 lines
    
    Inherit ALL elements of CallerID across a local channel.
    (closes issue #13368)
     Reported by: Peter Schlaile
     Patches: 
           20080826__bug13368.diff.txt uploaded by Corydon76 (license 14)
  ........
................
  r152287 | jpeeler | 2008-10-27 18:31:39 -0500 (Mon, 27 Oct 2008) | 10 lines
  
  Merged revisions 152286 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r152286 | jpeeler | 2008-10-27 18:28:49 -0500 (Mon, 27 Oct 2008) | 2 lines
  
  Buffer policy setting for half is not needed.
  
  ........
................
  r152369 | tilghman | 2008-10-28 12:07:39 -0500 (Tue, 28 Oct 2008) | 15 lines
  
  Merged revisions 152368 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r152368 | tilghman | 2008-10-28 12:04:56 -0500 (Tue, 28 Oct 2008) | 8 lines
    
    Reset all DIAL variables back to blank, in case Dial is called multiple times
    per call (which could otherwise lead to inconsistent status reports).
    (closes issue #13216)
     Reported by: ruddy
     Patches: 
           20081014__bug13216.diff.txt uploaded by Corydon76 (license 14)
     Tested by: ruddy
  ........
................
  r152467 | tilghman | 2008-10-28 17:33:40 -0500 (Tue, 28 Oct 2008) | 10 lines
  
  Merged revisions 152463 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r152463 | tilghman | 2008-10-28 17:32:34 -0500 (Tue, 28 Oct 2008) | 3 lines
    
    Quoting in the wrong direction
    (Fixes AST-107)
  ........
................
  r152569 | russell | 2008-10-29 00:34:26 -0500 (Wed, 29 Oct 2008) | 15 lines
  
  Merged revisions 152539 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r152539 | russell | 2008-10-29 00:23:51 -0500 (Wed, 29 Oct 2008) | 7 lines
  
  Fix an incorrect usage of sizeof()
  
  (closes issue #13795)
  Reported by: andrew53
  Patches:
  	chan_sip_sizeof.patch uploaded by andrew53 (license 519)
  
  ........
................
  r152605 | murf | 2008-10-29 00:47:13 -0500 (Wed, 29 Oct 2008) | 22 lines
  
  Merged revisions 152538 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r152538 | murf | 2008-10-28 23:19:04 -0600 (Tue, 28 Oct 2008) | 14 lines
  
  A little documentation cross-ref between features and
  dial and queue... I wasted some time (stupidly) trying
  to get the one-touch parking stuff working, because it
  didn't occur to me that I had to also have the corresponding
  options in the dial command! Duh! (In all this time, I never
  set this up before!)
  So, to keep some poor fool from suffering the same fate,
  I made the features.conf.sample file mention the corresponding
  opts in dial/queue; and the docs for dial/app specifically
  mention the corresponding decls in the feature.conf file.
  
  I hope this doesn't spoil some vast, eternal plan...
  
  
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@160388 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-02 22:19:37 +00:00
Tilghman Lesher
8411899d44 Merged revisions 147518,147689,148000,148112,148268,148917,148988,149062,149131,149201,149205,149208 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r147518 | file | 2008-10-08 09:53:51 -0500 (Wed, 08 Oct 2008) | 9 lines
  
  Merged revisions 147517 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r147517 | file | 2008-10-08 11:51:42 -0300 (Wed, 08 Oct 2008) | 2 lines
    
    If we receive DTMF make sure that the state of the speech structure goes back to being not ready. (issue #LUMENVOX-8)
  ........
................
  r147689 | kpfleming | 2008-10-08 17:26:55 -0500 (Wed, 08 Oct 2008) | 9 lines
  
  Merged revisions 147681 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r147681 | kpfleming | 2008-10-08 17:22:09 -0500 (Wed, 08 Oct 2008) | 3 lines
    
    when parsing a text configuration option, ensure that the buffer on the stack is actually large enough to hold the legal values of that option, and also ensure that sscanf() knows to stop parsing if it would overrun the buffer (without these changes, specifying "buffers=...,immediate" would overflow the buffer on the stack, and could not have worked as expected)
  ........
................
  r148000 | tilghman | 2008-10-09 14:39:34 -0500 (Thu, 09 Oct 2008) | 11 lines
  
  Merged revisions 147997 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r147997 | tilghman | 2008-10-09 14:38:33 -0500 (Thu, 09 Oct 2008) | 4 lines
    
    When blank, callerid name and number should display "unknown caller" in voicemail
    emails.
    (Closes issue #13643)
  ........
................
  r148112 | mmichelson | 2008-10-09 18:15:33 -0500 (Thu, 09 Oct 2008) | 26 lines
  
  Merged revisions 146026 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r146026 | murf | 2008-10-03 12:12:54 -0500 (Fri, 03 Oct 2008) | 18 lines
  
  (closes issue #13579)
  Reported by: dwagner
  
  (closes issue #13584)
  Reported by: dwagner
  Tested by: murf, putnopvut
  
  The thought occurred to me that the res= from the extension spawn
  was ending up being returned from the bridge.
  
  "Thou shalt not poison the return value". Made the change
  and it appears to allow blind xfers to work as normal.
  
  If I'm wrong, reopen the bugs. But it looks good to me!
  
  Many thanks to putnopvut for helping me reproduce this!
  
  
  ........
................
  r148268 | tilghman | 2008-10-10 11:31:31 -0500 (Fri, 10 Oct 2008) | 14 lines
  
  Merged revisions 148257 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r148257 | tilghman | 2008-10-10 11:25:31 -0500 (Fri, 10 Oct 2008) | 7 lines
    
    User not notified of temporary greeting, if ODBC storage is in use.
    (closes issue #13659)
     Reported by: moliveras
     Patches: 
           20081009__bug13659.diff.txt uploaded by Corydon76 (license 14)
     Tested by: moliveras
  ........
................
  r148917 | tilghman | 2008-10-14 12:46:48 -0500 (Tue, 14 Oct 2008) | 11 lines
  
  Merged revisions 148916 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r148916 | tilghman | 2008-10-14 12:41:08 -0500 (Tue, 14 Oct 2008) | 4 lines
    
    Ensure that mail headers are 7-bit clean, even when UTF-8 characters are used
    in headers like 'Subject' and 'To'.
    Closes AST-107.
  ........
................
  r148988 | tilghman | 2008-10-14 14:03:44 -0500 (Tue, 14 Oct 2008) | 9 lines
  
  Merged revisions 148987 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r148987 | tilghman | 2008-10-14 14:03:08 -0500 (Tue, 14 Oct 2008) | 2 lines
    
    Some compilers warn, some don't.  Fixing.
  ........
................
  r149062 | tilghman | 2008-10-14 15:16:48 -0500 (Tue, 14 Oct 2008) | 13 lines
  
  Merged revisions 149061 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r149061 | tilghman | 2008-10-14 15:09:06 -0500 (Tue, 14 Oct 2008) | 6 lines
    
    Check correct values in the return of ast_waitfor(); also, get rid of a
    possible memory leak.
    (closes issue #13658)
     Reported by: explidous
     Patch by: me
  ........
................
  r149131 | mmichelson | 2008-10-14 16:08:48 -0500 (Tue, 14 Oct 2008) | 15 lines
  
  Merged revisions 149130 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r149130 | mmichelson | 2008-10-14 15:49:02 -0500 (Tue, 14 Oct 2008) | 7 lines
  
  Don't allow reserved characters to be used in register
  lines in sip.conf.
  
  (closes issue #13570)
  Reported by: putnopvut
  
  
  ........
................
  r149201 | mmichelson | 2008-10-14 17:41:13 -0500 (Tue, 14 Oct 2008) | 20 lines
  
  Merged revisions 149200 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r149200 | mmichelson | 2008-10-14 17:40:42 -0500 (Tue, 14 Oct 2008) | 12 lines
  
  Update the queue with the correct number of calls and
  whether the call was completed within the service level
  when a transfer takes place. This way, we do not "break"
  the leastrecent and fewestcalls strategies by not logging
  a call until after the transferred call has ended.
  
  (closes issue #13395)
  Reported by: Marquis
  Patches:
        app_queue.c.transfer.patch uploaded by Marquis (license 32)
  
  
  ........
................
  r149205 | mmichelson | 2008-10-14 18:04:44 -0500 (Tue, 14 Oct 2008) | 20 lines
  
  Merged revisions 149204 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r149204 | mmichelson | 2008-10-14 18:00:01 -0500 (Tue, 14 Oct 2008) | 12 lines
  
  Add a tolerance period for sync-triggered audiohooks
  so that if packetization of audio is close (but not equal)
  we don't end up flushing the audiohooks over small
  inconsistencies in synchronization.
  
  Related to issue #13005, and solves the issue
  for most people who were experiencing the problem.
  However, a small number of people are still experiencing
  the problem on long calls, so I am not closing
  the issue yet
  
  
  ........
................
  r149208 | mmichelson | 2008-10-14 18:15:04 -0500 (Tue, 14 Oct 2008) | 17 lines
  
  Merged revisions 149207 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
  r149207 | mmichelson | 2008-10-14 18:10:26 -0500 (Tue, 14 Oct 2008) | 9 lines
  
  Call register_peer_exten even in the case that the peer's
  IP/port does not change.
  
  (closes issue #13309)
  Reported by: dimas
  Patches:
        v2-13309.patch uploaded by dimas (license 88)
  
  
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@160387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-02 22:16:32 +00:00
Mark Michelson
4fbe80cc63 This is the 1.6.0 version of revision 156883 of trunk.
This is different in that it preserves the case-sensitiveness
of processing queues from configuration.

closes issue #13703



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@156889 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-14 16:55:53 +00:00
Sean Bright
0591cc3029 Merged revisions 155554 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r155554 | seanbright | 2008-11-08 20:27:00 -0500 (Sat, 08 Nov 2008) | 14 lines

Merged revisions 155553 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r155553 | seanbright | 2008-11-08 20:08:07 -0500 (Sat, 08 Nov 2008) | 6 lines

Use static functions here instead of nested ones.  This requires a small
change to the ast_bridge_config struct as well.  To understand the reason
for this change, see the following post:

    http://gcc.gnu.org/ml/gcc-help/2008-11/msg00049.html

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@155555 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-09 01:34:59 +00:00
Kevin P. Fleming
fa635ea4b0 port gcc 4.3.x warning fixes from trunk to this branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@153743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-03 00:39:04 +00:00
Terry Wilson
e23be17786 Merged revisions 153181 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r153181 | twilson | 2008-10-31 13:55:33 -0500 (Fri, 31 Oct 2008) | 5 lines
  
  Recent CDR fixes moved execution of the 'h' exten into the bridging code, so variables that were set after ast_bridge_call was called would not show up in the 'h' exten.  Added a callback function to handle setting variables, etc. from w/in the bridging code.  Calls back into a nested function within the function calling ast_bridge_call
  
  (closes issue #13793)
  Reported by: greenfieldtech
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@153265 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-31 21:49:23 +00:00
Terry Wilson
969bef1dea Small modification to putnopvut's patch to fix this issue. Thanks for all the help, putnopvut!
(closes issue #12884)
	Reported by: bcnit
	Patches: 
	      12884v4-1.6.0-branch.patch uploaded by otherwiseguy (license 396)
	Tested by: otherwiseguy


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@152644 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-29 20:13:22 +00:00
Steve Murphy
3c1c24500b Merged revisions 142676 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r142676 | murf | 2008-09-11 22:50:48 -0600 (Thu, 11 Sep 2008) | 40 lines

Merged revisions 142675 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r142675 | murf | 2008-09-11 22:29:34 -0600 (Thu, 11 Sep 2008) | 29 lines

Tested by: sergee, murf, chris-mac, andrew, KNK

This is a "second attempt" to restore the previous "endbeforeh" behavior
in 1.4 and up. In order to capture information concerning all the
legs of transfers in all their infinite combinations, I was forced
to this particular solution by a chain of logical necessities, the
first being that I was not allowed to rewrite the CDR mechanism from 
the ground up!

This change basically leaves the original machinery alone, which allows
IVR and local channel type situations to generate CDR's as normal, but
a channel flag can be set to suppress the normal running of the h exten.
That flag would be set by the code that runs the h exten from the
ast_bridge_call routine, to prevent the h exten from being run twice.
Also, a flag in the ast_bridge_config struct passed into ast_bridge_call
can be used to suppress the running of the h exten in that routine. This
would happen, for instance, if you use the 'g' option in the Dial app.

Running this routine 'early' allows not only the CDR() func to be used
in the h extension for reading CDR variables, but also allows them to
be modified before the CDR is posted to the backends.

While I dearly hope that this patch overcomes all problems, and 
introduces no new problems, reality suggests that surely someone
will have problems. In this case, please re-open 13251 (or 13289),
and we'll see if we can't fix any remaining issues.

** trunk note: some code to suppress the h exten being run 
from app_queue was added; for the 'continue' option available
only in trunk/1.6.x.


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@142677 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-12 04:58:38 +00:00
Mark Michelson
fac93e8478 Fix app_queue's device state callback so that it
can correctly parse custom device states (and any
other device which does not contain a '/').

1.6.1 will be getting this patch as well, but trunk
is going to get a much more massive patch by bbryant
which does some very nice overhauling of some
structures in app_queue.

(closes issue #12979)
Reported by: sigxcpu
Patches:
      12979.patch uploaded by putnopvut (license 60)
Tested by: sigxcpu



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@142090 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-09 16:26:56 +00:00
Mark Michelson
dc4224c694 Merged revisions 140975 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r140975 | mmichelson | 2008-09-03 15:16:12 -0500 (Wed, 03 Sep 2008) | 4 lines

Fix some locking order issues in app_queue. This was
brought up by atis on IRC a while ago.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@140976 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-03 20:18:14 +00:00
Mark Michelson
ac72baa7b5 Merged revisions 138687 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r138687 | mmichelson | 2008-08-18 15:04:10 -0500 (Mon, 18 Aug 2008) | 18 lines

Merged revisions 138685 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r138685 | mmichelson | 2008-08-18 15:01:14 -0500 (Mon, 18 Aug 2008) | 10 lines

Change the inequalities used in app_queue with regards
to timeouts from being strict to non-strict for more
accuracy.

(closes issue #13239)
Reported by: atis
Patches:
      app_queue_timeouts_v2.patch uploaded by atis (license 242)


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@138688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-18 20:05:09 +00:00