Commit Graph

1821 Commits

Author SHA1 Message Date
Matthew Nicholson
c1df063c75 Merged revisions 198072 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r198072 | mnicholson | 2009-05-29 14:04:24 -0500 (Fri, 29 May 2009) | 21 lines
  
  Merged revisions 198068 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r198068 | mnicholson | 2009-05-29 13:53:01 -0500 (Fri, 29 May 2009) | 15 lines
    
    Use AST_CDR_NOANSWER instead of AST_CDR_NULL as the default CDR disposition.
    
    This change also involves the addition of an AST_CDR_FLAG_ORIGINATED flag that is used on originated channels to distinguish: them from dialed channels.
    
    (closes issue #12946)
    Reported by: meral
    Patches:
          null-cdr2.diff uploaded by mnicholson (license 96)
    Tested by: mnicholson, dbrooks
    
    (closes issue #15122)
    Reported by: sum
    Tested by: sum
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@198074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-29 19:13:44 +00:00
Mark Michelson
faaeca2980 Merged revisions 197606 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r197606 | mmichelson | 2009-05-28 10:32:19 -0500 (Thu, 28 May 2009) | 22 lines
  
  Recorded merge of revisions 197588 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r197588 | mmichelson | 2009-05-28 10:27:49 -0500 (Thu, 28 May 2009) | 16 lines
    
    Allow for media to arrive from an alternate source when responding to a reinvite with 491.
    
    When we receive a SIP reinvite, it is possible that we may not be able to process the
    reinvite immediately since we have also sent a reinvite out ourselves. The problem is
    that whoever sent us the reinvite may have also sent a reinvite out to another party,
    and that reinvite may have succeeded.
    
    As a result, even though we are not going to accept the reinvite we just received, it
    is important for us to not have problems if we suddenly start receiving RTP from a new
    source. The fix for this is to grab the media source information from the SDP of the
    reinvite that we receive. This information is passed to the RTP layer so that it will
    know about the alternate source for media.
    
    Review: https://reviewboard.asterisk.org/r/252
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@197618 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-28 15:39:37 +00:00
Mark Michelson
92611fe933 Merged revisions 197543 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r197543 | mmichelson | 2009-05-28 09:58:06 -0500 (Thu, 28 May 2009) | 27 lines
  
  Merged revisions 197537 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r197537 | mmichelson | 2009-05-28 09:49:13 -0500 (Thu, 28 May 2009) | 21 lines
    
    Add flags to chanspy audiohook so that audio stays in sync.
    
    There are two flags being added to the chanspy audiohook here. One
    is the pre-existing AST_AUDIOHOOK_TRIGGER_SYNC flag. With this set,
    we ensure that the read and write slinfactories on the audiohook do
    not skew beyond a certain tolerance.
    
    In addition, there is a new audiohook flag added here,
    AST_AUDIOHOOK_SMALL_QUEUE. With this flag set, we do not allow for
    a slinfactory to build up a substantial amount of audio before 
    flushing it. For this particular issue, this means that the person 
    spying on the call will hear the conversations in real time with very 
    little delay in the audio.
    
    (closes issue #13745)
    Reported by: geoffs
    Patches:
          13745.patch uploaded by mmichelson (license 60)
    Tested by: snblitz
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@197545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-28 15:11:15 +00:00
Jeff Peeler
538fc9986c Fix broken attended transfers
The bridge was terminating immediately after the attended transfer was 
completed. The problem was because upon reentering ast_channel_bridge
nexteventts was checked to see if it was set and if so could possibly
return AST_BRIDGE_COMPLETE.
  
(closes issue #15183)
Reported by: andrebarbosa
Tested by: andrebarbosa, tootai, loloski


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@197145 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-27 17:21:04 +00:00
Russell Bryant
6555209ab2 Merged revisions 196946 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r196946 | russell | 2009-05-26 17:40:34 -0500 (Tue, 26 May 2009) | 8 lines
  
  Update configure script to check for OSP toolkit 3.5.0.
  
  (closes issue #14988)
  Reported by: tzafrir
  Patches:
        configure.ac.diff uploaded by homesick (license 91)
        new_ast_check_osptk.m4 uploaded by homesick (license 91)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@196947 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-26 22:42:04 +00:00
Matthew Nicholson
933e0922c1 Merged revisions 195882 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r195882 | mnicholson | 2009-05-21 10:33:55 -0500 (Thu, 21 May 2009) | 20 lines
  
  Merged revisions 195881 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r195881 | mnicholson | 2009-05-21 10:25:50 -0500 (Thu, 21 May 2009) | 13 lines
    
    This commit prevents cdr records with AST_CDR_FLAG_ANSLOCKED and AST_CDR_FLAG_LOCKED from being updated in certain cases.
    
    This is accomplished by adding two functions to update the answer time and disposition of calls that checks for the proper lock flags.  These functions are used in the ast_bridge_call() function so that ForkCDR(A) calls are respected.
    
    This patch also modifies the way ast_bridge_call() chooses the cdr record to base the bridged_cdr on.  Previously the first unlocked cdr record would be chosen, now instead the first cdr record is chosen and forked cdr records are moved to the bridge_cdr.  This allows the original cdr record and any forked cdr records to be properly updated with answer and end times.
    
    (closes issue #13797)
    Reported by: sh0t
    Tested by: sh0t
    
    (closes issue #14744)
    Reported by: deepesh
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@195892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-21 16:19:20 +00:00
Tilghman Lesher
20cc5ff46e 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.1@195372 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-18 20:54:29 +00:00
Kevin P. Fleming
cb17e3a0f1 Merged revisions 192357 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r192357 | kpfleming | 2009-05-05 15:18:21 +0200 (Tue, 05 May 2009) | 5 lines
  
  Correct some flaws in the memory accounting code for stringfields and ao2 objects
  
  Under some conditions, the memory allocation for stringfields and ao2 objects would not have supplied valid file/function names for MALLOC_DEBUG tracking, so this commit corrects that.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@192359 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-05 13:37:23 +00:00
Kevin P. Fleming
1e4552ef29 Merged revisions 192318 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r192318 | kpfleming | 2009-05-05 12:34:19 +0200 (Tue, 05 May 2009) | 5 lines
  
  Properly account for memory allocated for channels and datastores
  
  As in previous commits, when channels are allocated (with ast_channel_alloc) or datastores are allocated (with ast_datastore_alloc) properly account for the memory being owned by the caller, instead of the allocator function itself.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@192354 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-05 12:44:54 +00:00
Kevin P. Fleming
8e6c32f048 Merged revisions 192279 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r192279 | kpfleming | 2009-05-05 10:51:06 +0200 (Tue, 05 May 2009) | 5 lines
  
  Ensure that string pools allocated to hold stringfields are properly accounted in MALLOC_DEBUG mode
  
  This commit modifies the stringfield pool allocator to remember the 'owner' of the stringfield manager the pool is being allocated for, and ensures that pools allocated in the future when fields are populated are owned by that file/function.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@192281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-05 09:15:13 +00:00
Kevin P. Fleming
ed8fb52309 Merged revisions 192059 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r192059 | kpfleming | 2009-05-04 18:24:16 +0200 (Mon, 04 May 2009) | 5 lines
  
  Ensure that astobj2 memory allocations are properly accounted for when MALLOC_DEBUG is used
  
  This commit ensures that all astobj2 allocated objects are properly accounted for in MALLOC_DEBUG mode by passing down the file/function/line information from the module/function that actually called the astobj2 allocation function.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@192154 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-04 19:20:58 +00:00
Tilghman Lesher
a6d5af5386 Merged revisions 191367 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r191367 | tilghman | 2009-04-30 12:40:58 -0500 (Thu, 30 Apr 2009) | 3 lines
  
  Detect eaccess (or euidaccess) before using it.
  Reported by Andrew Lindh via the -dev list.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@191369 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-30 17:45:40 +00:00
Kevin P. Fleming
3f2c29bc5c Merged revisions 190725 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r190725 | kpfleming | 2009-04-27 14:30:54 -0500 (Mon, 27 Apr 2009) | 13 lines
  
  Merged revisions 190721 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r190721 | kpfleming | 2009-04-27 14:29:46 -0500 (Mon, 27 Apr 2009) | 7 lines
    
    Fix 'inconsistent line endings' when autoconf 2.63 is used
    
    Attempt to make configure script regeneration 'safe' using autoconf 2.63, which embeds a bare CR into the script, thus making Subversion complain about inconsistent line endings
    
    This commit changes the MIME type of the configure script to be 'binary' thus making Subversion no longer inspect line endings, and as a bonus 'svn diff' will no longer try to generate diff output for it, which is not generally useful anyway.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@190731 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-27 19:42:07 +00:00
Tilghman Lesher
ffb2afe61d Merged revisions 190093 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r190093 | tilghman | 2009-04-22 16:38:15 -0500 (Wed, 22 Apr 2009) | 14 lines
  
  Merged revisions 190092 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r190092 | tilghman | 2009-04-22 16:35:03 -0500 (Wed, 22 Apr 2009) | 7 lines
    
    Detect availability of pthread_rwlock_timedwrlock() before using it.
    (closes issue #14930)
     Reported by: tilghman
     Patches: 
           20090420__bug14930.diff.txt uploaded by tilghman (license 14)
     Tested by: mvanbaak, tilghman
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@190095 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-22 21:42:58 +00:00
Jeff Peeler
fc096399ea Merged revisions 190057 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r190057 | jpeeler | 2009-04-22 16:15:55 -0500 (Wed, 22 Apr 2009) | 9 lines
  
  Fix building of chan_h323 with gcc-3.3
  
  There seems to be a bug with old versions of g++ that doesn't allow a structure
  member to use the name list. Rename list member to group_list in ast_group_info
  and change the few places it is used.
  
  (closes issue #14790)
  Reported by: stuarth
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@190063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-22 21:18:11 +00:00
Doug Bailey
0ace2e48d0 Merged revisions 189629 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r189629 | dbailey | 2009-04-21 09:28:04 -0500 (Tue, 21 Apr 2009) | 10 lines
  
  Merged revisions 189601 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r189601 | dbailey | 2009-04-21 09:00:55 -0500 (Tue, 21 Apr 2009) | 3 lines
    
    Add check in configure script to check for GLOB_NOMAGIC and GLOB_BRACE in glob.h 
    This allows config.c to compile when linked against uclibc that does not support these parameters
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@189642 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-21 15:20:22 +00:00
Tilghman Lesher
d470a900fa Merged revisions 187599 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r187599 | tilghman | 2009-04-09 22:55:27 -0500 (Thu, 09 Apr 2009) | 2 lines
  
  Modify headers and macros, according to Russell's suggestions on the -dev list
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@187600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-10 03:56:37 +00:00
Tilghman Lesher
8a39d76713 Merged revisions 187483 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r187483 | tilghman | 2009-04-09 13:40:01 -0500 (Thu, 09 Apr 2009) | 15 lines
  
  Merged revisions 187428 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r187428 | tilghman | 2009-04-09 13:08:20 -0500 (Thu, 09 Apr 2009) | 8 lines
    
    Race condition between ast_cli_command() and 'module unload' could cause a deadlock.
    Add lock timeouts to avoid this potential deadlock.
    (closes issue #14705)
     Reported by: jamessan
     Patches: 
           20090320__bug14705.diff.txt uploaded by tilghman (license 14)
     Tested by: jamessan
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@187486 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-09 18:54:07 +00:00
Tilghman Lesher
9f970c65a5 Merged revisions 187302 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r187302 | tilghman | 2009-04-08 23:59:05 -0500 (Wed, 08 Apr 2009) | 14 lines
  
  Merged revisions 187300-187301 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r187300 | tilghman | 2009-04-08 23:31:38 -0500 (Wed, 08 Apr 2009) | 3 lines
    
    Add debugging mode for diagnosing file descriptor leaks.
    (Related to issue #14625)
  ........
    r187301 | tilghman | 2009-04-08 23:32:40 -0500 (Wed, 08 Apr 2009) | 2 lines
    
    Oops, missed this file in the last commit.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@187305 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-09 05:16:25 +00:00
Joshua Colp
4e78d466fd Merged revisions 186321 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r186321 | file | 2009-04-03 12:52:50 -0300 (Fri, 03 Apr 2009) | 12 lines
  
  Merged revisions 186320 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r186320 | file | 2009-04-03 12:48:56 -0300 (Fri, 03 Apr 2009) | 5 lines
    
    Fix a problem with the crypto variable definitions not actually being defined properly.
    
    (closes issue #14804)
    Reported by: jvandal
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@186323 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-03 15:54:57 +00:00
Kevin P. Fleming
ad618c6c4f Merged revisions 184762 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r184762 | kpfleming | 2009-03-27 14:10:32 -0500 (Fri, 27 Mar 2009) | 12 lines
  
  Improve timing interface to remember which provider provided a timer
  
  The ability to load/unload timing interfaces is nice, but it means that when a timer is allocated, it may come from provider A, but later provider B becomes the 'preferred' provider. If this happens, all timer API calls on the timer that was provided by provider A will actually be handed to provider B, which will say WTF and return an error.
  
  This patch changes the timer API to include a pointer to the provider of the timer handle so that future operations on the timer will be forwarded to the proper provider.
  
  (closes issue #14697)
  Reported by: moy
  
  Review: http://reviewboard.digium.com/r/211/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@184765 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-27 19:17:22 +00:00
Russell Bryant
e98905628a Merged revisions 184630 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r184630 | russell | 2009-03-27 09:00:18 -0500 (Fri, 27 Mar 2009) | 2 lines

Change g_eid to ast_eid_default.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@184631 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-27 14:04:56 +00:00
Russell Bryant
03cb4bfefe Merged revisions 184531 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r184531 | russell | 2009-03-26 21:20:23 -0500 (Thu, 26 Mar 2009) | 20 lines

Fix some issues with rwlock corruption that caused deadlock like symptoms.

When dvossel and I were doing some load testing last week, we noticed that we
could make Asterisk trunk lock up instantly when we started generating a bunch
of calls.  The backtraces of locked threads were bizarre, and many were stuck
on an _unlock_ of an rwlock.

The changes are:

1) Fix a number of places where a backtrace would be loaded into an invalid
   index of the backtrace array.  It's an off by one error, which ends up
   writing over the rwlock itself.

2) Ensure that in the array of held locks, we NULL out an index once it is
   not being used so that it's not confusing when analyzing its contents.

3) Remove a bunch of logging referring to an rwlock operating being done
   with "deep reentrancy".  It is normal for _many_ threads to hold a
   read lock on an rwlock.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@184547 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-27 02:25:31 +00:00
Russell Bryant
6d487a76fc Merged revisions 184512 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r184512 | russell | 2009-03-26 20:35:56 -0500 (Thu, 26 Mar 2009) | 2 lines

Pass more useful information through to lock tracking when DEBUG_THREADS is on.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@184513 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-27 01:36:42 +00:00
Russell Bryant
429e148ebf Merged revisions 184339 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r184339 | russell | 2009-03-25 16:57:19 -0500 (Wed, 25 Mar 2009) | 35 lines

Improve performance of the ast_event cache functionality.

This code comes from svn/asterisk/team/russell/event_performance/.

Here is a summary of the changes that have been made, in order of both
invasiveness and performance impact, from smallest to largest.

1) Asterisk 1.6.1 introduces some additional logic to be able to handle
   distributed device state.  This functionality comes at a cost.
   One relatively minor change in this patch is that the extra processing
   required for distributed device state is now completely bypassed if
   it's not needed.

2) One of the things that I noticed when profiling this code was that a
   _lot_ of time was spent doing string comparisons.  I changed the way
   strings are represented in an event to include a hash value at the front.
   So, before doing a string comparison, we do an integer comparison on the
   hash.

3) Finally, the code that handles the event cache has been re-written.
   I tried to do this in a such a way that it had minimal impact on the API.
   I did have to change one API call, though - ast_event_queue_and_cache().
   However, the way it works now is nicer, IMO.  Each type of event that
   can be cached (MWI, device state) has its own hash table and rules for
   hashing and comparing objects.  This by far made the biggest impact on
   performance.

For additional details regarding this code and how it was tested, please see the
review request.

(closes issue #14738)
Reported by: russell

Review: http://reviewboard.digium.com/r/205/

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@184342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-25 22:02:20 +00:00
Russell Bryant
02dc79b54e Merged revisions 184147 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r184147 | russell | 2009-03-24 20:42:10 -0500 (Tue, 24 Mar 2009) | 5 lines
  
  Fix build issues on Mac OSX.
  
  (closes issue #14714)
  Reported by: ygor
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@184149 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-25 01:55:16 +00:00
David Vossel
cad3e27d20 Merged revisions 183436 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r183436 | dvossel | 2009-03-19 15:30:39 -0500 (Thu, 19 Mar 2009) | 13 lines
  
  Merged revisions 183386 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r183386 | dvossel | 2009-03-19 14:40:07 -0500 (Thu, 19 Mar 2009) | 6 lines
    
    Cleaning up a few things in detect disconnect patch
    
    Initialized ast_call_feature in detect_disconnect to avoid accessing uninitialized memory.  Cleaned up /param tags in features.h.  No longer send dynamic features in ast_feature_detect. 
    
    issue #11583
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@183438 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-19 20:33:19 +00:00
Russell Bryant
eaacec583f Merged revisions 183242 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r183242 | russell | 2009-03-19 13:00:15 -0500 (Thu, 19 Mar 2009) | 10 lines

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

........
r183241 | russell | 2009-03-19 12:52:52 -0500 (Thu, 19 Mar 2009) | 2 lines

Remove the use of RTLD_NOLOAD, as it is not behaving like expected.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@183249 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-19 18:14:55 +00:00
David Vossel
88af25b2bd Merged revisions 183172 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r183172 | dvossel | 2009-03-19 11:28:33 -0500 (Thu, 19 Mar 2009) | 20 lines
  
  Merged revisions 183126 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r183126 | dvossel | 2009-03-19 11:15:16 -0500 (Thu, 19 Mar 2009) | 17 lines
    
    Allow disconnect feature before a call is bridged
    
    feature.conf has a disconnect option.  By default this option is set to '*', but it could be anything.  If a user wishes to disconnect a call before the other side answers, only '*' will work, regardless if the disconnect option is set to something else.  This is because features are unavailable until bridging takes place.  The default disconnect option, '*', was hardcoded in app_dial, which doesn't make any sense from a user perspective since they may expect it to be something different.  This patch allows features to be detected from outside of the bridge, but not operated on.  In this case, the disconnect feature can be detected before briding and handled outside of features.c.
    
    (closes issue #11583)
    Reported by: sobomax
    Patches:
    	patch-apps__app_dial.c uploaded by sobomax (license 359)
    	11583.latest-patch uploaded by murf (license 17)
    	detect_disconnect.diff uploaded by dvossel (license 671)
    Tested by: sobomax, dvossel
    Review: http://reviewboard.digium.com/r/195/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@183198 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-19 17:08:23 +00:00
Russell Bryant
baab6e74b9 Merged revisions 182847 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r182847 | russell | 2009-03-17 21:28:55 -0500 (Tue, 17 Mar 2009) | 52 lines

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

........
r182810 | russell | 2009-03-17 21:09:13 -0500 (Tue, 17 Mar 2009) | 44 lines

Fix cases where the internal poll() was not being used when it needed to be.

We have seen a number of problems caused by poll() not working properly on 
Mac OSX.  If you search around, you'll find a number of references to using 
select() instead of poll() to work around these issues.  In Asterisk, we've 
had poll.c which implements poll() using select() internally.  However, we 
were still getting reports of problems.

vadim investigated a bit and realized that at least on his system, even 
though we were compiling in poll.o, the system poll() was still being used.  
So, the primary purpose of this patch is to ensure that we're using the 
internal poll() when we want it to be used.

The changes are:

1) Remove logic for when internal poll should be used from the Makefile.  
   Instead, put it in the configure script.  The logic in the configure 
   script is the same as it was in the Makefile.  Ideally, we would have 
   a functionality test for the problem, but that's not actually possible, 
   since we would have to be able to run an application on the _target_ 
   system to test poll() behavior.

2) Always include poll.o in the build, but it will be empty if AST_POLL_COMPAT
   is not defined.

3) Change uses of poll() throughout the source tree to ast_poll().  I feel 
   that it is good practice to give the API call a new name when we are 
   changing its behavior and not using the system version directly in all cases.
   So, normally, ast_poll() is just redefined to poll().  On systems where 
   AST_POLL_COMPAT is defined, ast_poll() is redefined to ast_internal_poll().

4) Change poll() in main/poll.c to be ast_internal_poll().

It's worth noting that any code that still uses poll() directly will work fine 
(if they worked fine before).  So, for example, out of tree modules that are 
using poll() will not stop working or anything.  However, for modules to work 
properly on Mac OSX, ast_poll() needs to be used.

(closes issue #13404)
Reported by: agalbraith
Tested by: russell, vadim

http://reviewboard.digium.com/r/198/

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@182946 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-18 14:32:47 +00:00
Kevin P. Fleming
4d1d39c1e7 Merged revisions 182525 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r182525 | kpfleming | 2009-03-17 09:38:11 -0500 (Tue, 17 Mar 2009) | 11 lines
  
  Improve behavior of ast_answer() to not lose incoming frames
  
  ast_answer(), when supplied a delay before returning to the caller, use ast_safe_sleep() to implement the delay. Unfortunately during this time any incoming frames are discarded, which is problematic for T.38 re-INVITES and other sorts of channel operations.
  
  When a delay is not passed to ast_answer(), it still delays for up to 500 milliseconds, waiting for media to arrive. Again, though, it discards any control frames, or non-voice media frames.
  
  This patch rectifies this situation, by storing all incoming frames during the delay period on a list, and then requeuing them onto the channel before returning to the caller.
  
  http://reviewboard.digium.com/r/196/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@182527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-17 14:39:50 +00:00
Jeff Peeler
efc87a9c86 Merged revisions 181135 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r181135 | jpeeler | 2009-03-10 23:06:44 -0500 (Tue, 10 Mar 2009) | 20 lines
  
  Fix malloc debug macros to work properly with h323.
  
  The main problem here was that cstdlib was undefining free thereby causing the
  proper debug macros to not be used. ast_h323.cxx has been changed to call
  ast_free instead to avoid the issue. 
  
  A few other issues were addressed:
  - There were a few instances of functions improperly passing ast_free instead
  of ast_free_ptr.
  - Some clean up was done to avoid the debug macros intentionally being redefined.
  (copied below from Kevin's commit, appreciate the help)
  - disable astmm.h from doing anything when STANDALONE is defined, which is used
  by the tools in the utils/ directory that use parts of Asterisk header files in
  hackish ways; also ensure that utils/extconf.c and utils/conf2ael.c are
  compiled with STANDALONE defined.
  
  (closes issue #13593)
  Reported by: pj
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@181199 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-11 04:33:29 +00:00
Jeff Peeler
b3eaf3beef Merged revisions 180719 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r180719 | jpeeler | 2009-03-09 15:58:17 -0500 (Mon, 09 Mar 2009) | 16 lines
  
  Add Doxygen documentation for API changes from 1.6.0 to 1.6.1
  
  Copied from my review board description:
  This is a continuation of the API changes documentation started for describing
  changes between releases. Most of the API changes were pretty simple needing
  only to be brought to attention via the new "Asterisk API Changes" list.
  However, if you see anything that needs further explanation feel free to
  supplement what is there. The current method of documenting is to add (in the
  header file): \version <ver number> <description of changes> and then to add
  the function to the change list in doxyref.h on the AstAPIChanges page. I also
  made sure all the functions that were newly added were tagged with \since
  1.6.1. I think this is a good habit to start both for the historical aspect as
  well as for the future ability to easily add a "New Asterisk API" page.
  
  Review: http://reviewboard.digium.com/r/190/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180740 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-09 21:22:42 +00:00
Kevin P. Fleming
d7230bd376 Merged revisions 180373 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180373 | kpfleming | 2009-03-05 12:29:38 -0600 (Thu, 05 Mar 2009) | 15 lines
  
  Merged revisions 180372 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180372 | kpfleming | 2009-03-05 12:22:16 -0600 (Thu, 05 Mar 2009) | 9 lines
    
    Fix problems when RTP packet frame size is changed
    
    During some code analysis, I found that calling ast_rtp_codec_setpref() on an ast_rtp session does not work as expected; it does not adjust the smoother that may on the RTP session, in fact it summarily drops it, even if it has data in it, even if the current format's framing size has not changed. This is not good.
    
    This patch changes this behavior, so that if the packetization size for the current format changes, any existing smoother is safely updated to use the new size, and if no smoother was present, one is created. A new API call for smoothers, ast_smoother_reconfigure(), was required to implement these changes.
    
    Review: http://reviewboard.digium.com/r/184/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 18:40:32 +00:00
David Vossel
84b495160a Merged revisions 180032 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r180032 | dvossel | 2009-03-03 17:21:18 -0600 (Tue, 03 Mar 2009) | 14 lines
  
  app_read does not break from prompt loop with user terminated empty string
  
  In app.c, ast_app_getdata is called to stream the prompts and receive DTMF input.  If ast_app_getdata() receives an empty string caused by the user inputing the end of string character, in this case '#', it should break from the prompt loop and return to app_read, but instead it cycles through all the prompts.  I've added a return value for this special case in ast_readstring() which uses an enum I've delcared in apps.h.  This enum is now used as a return value for ast_app_getdata().
  
  (closes issue #14279)
  Reported by: Marquis
  Patches:
  	fix_app_read.patch uploaded by Marquis (license 32)
  	read-ampersanmd.patch2 uploaded by dvossel (license 671)
  Tested by: Marquis, dvossel
  Review: http://reviewboard.digium.com/r/177/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180080 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 23:39:25 +00:00
Tilghman Lesher
418c220742 Oops, last merge broke 1.6.1 branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 22:15:38 +00:00
Tilghman Lesher
493bda9494 Merged revisions 177664 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r177664 | tilghman | 2009-02-20 11:29:51 -0600 (Fri, 20 Feb 2009) | 8 lines
  
  Allow semicolons to be escaped, when passing arguments to the System command.
  (closes issue #14231)
   Reported by: jcovert
   Patches: 
         20090113__bug14231__2.diff.txt uploaded by Corydon76 (license 14)
         corrected_20090113__bug14231__2.diff.txt uploaded by jcovert (license 551)
   Tested by: jcovert
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177761 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 21:35:18 +00:00
Tilghman Lesher
11babd36fd Merged revisions 177732 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r177732 | tilghman | 2009-02-20 15:25:37 -0600 (Fri, 20 Feb 2009) | 10 lines
  
  Merged revisions 177701 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r177701 | tilghman | 2009-02-20 15:15:01 -0600 (Fri, 20 Feb 2009) | 3 lines
    
    This exception does not appear to still be true for Solaris 10, and OpenSolaris definitely needs it to be removed.
    Fixed for snuff-home on -dev channel.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177760 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 21:34:28 +00:00
David Vossel
f9fa2e07ab Fixes issue with undefined audio codecs in chan_iax2
During iax2 call negotiation, supported codecs are passed in an Information Element containing a 2 byte field where each bit correlates to a specific codec.  In 1.6 only audio codec bits 0-12 are defined, leaving bits 13-14 undefined.  By default all bits are enabled unless specified otherwise.  Since its a 2 byte field and 13-14 are not defined, these bits are never turned off.  In trunk, bits 13-14 are defined, which means 1.6 is advertising support for codecs it does not have when talking to trunk.  I fixed this by adding #define for undefined audio codec bits.  These bits are then removed from iax2's full bandwidth capabilities.   

(closes issue #14283)
Reported by: jcovert



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 20:34:11 +00:00
Jeff Peeler
461e660582 Merged revisions 177387 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r177387 | jpeeler | 2009-02-19 10:45:02 -0600 (Thu, 19 Feb 2009) | 3 lines
  
  Fix another merge error from 176708
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177389 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-19 16:46:09 +00:00
Tilghman Lesher
10f71a67e6 Merged revisions 177098 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r177098 | tilghman | 2009-02-18 13:05:15 -0600 (Wed, 18 Feb 2009) | 9 lines
  
  Merged revisions 177096 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r177096 | tilghman | 2009-02-18 12:30:38 -0600 (Wed, 18 Feb 2009) | 2 lines
    
    Document the return value of the update method (as requested on -dev list)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177100 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-18 19:09:24 +00:00
Russell Bryant
e9ccb78b02 Merged revisions 176904 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r176904 | russell | 2009-02-18 00:14:47 -0600 (Wed, 18 Feb 2009) | 2 lines

Add example code for a heap traversal.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176906 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-18 06:15:35 +00:00
Jeff Peeler
22dafa5396 Merged revisions 176708 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r176708 | jpeeler | 2009-02-17 16:08:00 -0600 (Tue, 17 Feb 2009) | 23 lines
  
  Merged revisions 176701 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r176701 | jpeeler | 2009-02-17 15:54:34 -0600 (Tue, 17 Feb 2009) | 17 lines
    
    Modify bridging to properly evaluate DTMF after first warning is played
    
    The main problem is currently if the Dial flag L is used with a warning sound,
    DTMF is not evaluated after the first warning sound. To fix this, a flag has 
    been added in ast_generic_bridge for playing the warning which ensures that if
    a scheduled warning is missed, multiple warrnings are not played back (due to a
    feature evaluation or waiting for digits). ast_channel_bridge was modified to
    store the nexteventts in the ast_bridge_config structure as that information
    was lost every time ast_channel_bridge was reentered, causing a hangup due to
    incorrect time calculations.
    
    (closes issue #14315)
    Reported by: tim_ringenbach
    
    Reviewed on reviewboard:
    http://reviewboard.digium.com/r/163/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-17 22:15:26 +00:00
Mark Michelson
b03ba14e81 Merged revisions 176697 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r176697 | mmichelson | 2009-02-17 15:40:09 -0600 (Tue, 17 Feb 2009) | 3 lines
  
  Clear up documentation of AST_FRIENDLY_OFFSET in frame.h
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176699 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-17 21:41:40 +00:00
Russell Bryant
18b14510f2 Merged revisions 176666 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r176666 | russell | 2009-02-17 15:22:40 -0600 (Tue, 17 Feb 2009) | 16 lines

Update the timing API to have better support for multiple timing interfaces.

1) Add module use count handling so that timing modules can be unloaded.

2) Implement unload_module() functions for the timing interface modules.

3) Allow multiple timing modules to be loaded, and use the one with the
   highest priority value.

4) Report which timing module is being use in the "timing test" CLI command.

(closes issue #14489)
Reported by: russell

Review: http://reviewboard.digium.com/r/162/

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176675 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-17 21:24:17 +00:00
Russell Bryant
24d7b89cbe Merged revisions 176632 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r176632 | russell | 2009-02-17 14:51:10 -0600 (Tue, 17 Feb 2009) | 8 lines

Add an implementation of the heap data structure.

A heap is a convenient data structure for implementing a priority queue.

Code from svn/asterisk/team/russell/heap/.

Review: http://reviewboard.digium.com/r/160/

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176634 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-17 20:52:24 +00:00
Kevin P. Fleming
b88bed9b07 Merged revisions 176255 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r176255 | kpfleming | 2009-02-16 15:45:54 -0600 (Mon, 16 Feb 2009) | 13 lines
  
  Merged revisions 176216 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r176216 | kpfleming | 2009-02-16 15:10:38 -0600 (Mon, 16 Feb 2009) | 3 lines
    
    fix a flaw in the ast_string_field_build() family of API calls; these functions made no attempt to reuse the space already allocated to a field, so every time the field was written it would allocate new space, leading to what appeared to be a memory leak.
  ........
    r176254 | kpfleming | 2009-02-16 15:41:46 -0600 (Mon, 16 Feb 2009) | 3 lines
  
    correct a logic error in the last stringfields commit... don't mark additional space as allocated if the string was built using already-allocated space
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176259 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-16 22:00:56 +00:00
Michiel van Baak
9dab42b819 Merged revisions 175952 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r175952 | mvanbaak | 2009-02-16 01:26:59 +0100 (Mon, 16 Feb 2009) | 10 lines
  
  Merged revisions 175921 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r175921 | mvanbaak | 2009-02-16 00:37:03 +0100 (Mon, 16 Feb 2009) | 3 lines
    
    fix mis-spelling of the word registered.
    Reported by De_Mon on #asterisk-dev.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176023 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-16 09:42:46 +00:00
Russell Bryant
ce201230ea Merged revisions 175882 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r175882 | russell | 2009-02-15 15:27:33 -0600 (Sun, 15 Feb 2009) | 2 lines

Make ast_sched_report() and ast_sched_dump() thread safe.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@175890 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-15 21:28:55 +00:00
Russell Bryant
3e2b976fc0 Merged revisions 175829 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r175829 | russell | 2009-02-15 14:56:27 -0600 (Sun, 15 Feb 2009) | 14 lines

Fix a number of problems with ast_sched_report().

1) It had numerous coding guidelines violations with regards to formatting.

2) It allocated memory using ast_calloc() that was never freed.

3) It didn't check for failure from the allocation.

4) It used sprintf() and strcat() to build the result, doing zero checking to
   prevent writing past the end of the provided buffer.

The function also lacks API documentation, but that has not been addressed in
this commit.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@175831 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-15 21:00:58 +00:00