Commit Graph

1756 Commits

Author SHA1 Message Date
Russell Bryant
52f5e8fcfb Merged revisions 165723 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r165723 | russell | 2008-12-18 13:33:42 -0600 (Thu, 18 Dec 2008) | 14 lines

Remove the need for AST_PBX_KEEPALIVE with the GoSub option from Dial.

This is part of an effort to completely remove AST_PBX_KEEPALIVE and other
similar return codes from the source.  While this usage was perfectly safe,
there are others that are problematic.  Since we know ahead of time that
we do not want to PBX to destroy the channel, the PBX API has been changed
so that information can be provided as an argument, instead, thus removing
the need for the KEEPALIVE return value.

Further changes to get rid of KEEPALIVE and related code is being done by
murf.  There is a patch up for that on review 29.

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

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165728 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-18 19:45:11 +00:00
Russell Bryant
f39a711c49 Merged revisions 164737 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r164737 | russell | 2008-12-16 11:14:01 -0600 (Tue, 16 Dec 2008) | 22 lines

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

........
r164736 | russell | 2008-12-16 11:06:29 -0600 (Tue, 16 Dec 2008) | 14 lines

Fix memory leak and invalid reporting issues with DEBUG_THREADLOCALS.

One issue was that the ast_mutex_* API was being used within the context of the
thread local data destructors.  We would go off and allocate more thread local data
while the pthread lib was in the middle of destroying it all.  This led to a memory 
leak.

Another issue was an invalid argument being provided to the the object_add
API call.

(closes issue #13678)
Reported by: ys
Tested by: Russell

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164739 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-16 17:18:12 +00:00
Mark Michelson
81311222e2 Merged revisions 164423 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r164423 | mmichelson | 2008-12-15 13:53:29 -0600 (Mon, 15 Dec 2008) | 11 lines

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

........
r164422 | mmichelson | 2008-12-15 13:53:08 -0600 (Mon, 15 Dec 2008) | 3 lines

Add the deadlock note to ast_spawn_extension as well


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164425 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-15 19:54:18 +00:00
Mark Michelson
2850729218 Merged revisions 164419 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r164419 | mmichelson | 2008-12-15 13:51:24 -0600 (Mon, 15 Dec 2008) | 12 lines

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

........
r164416 | mmichelson | 2008-12-15 13:45:07 -0600 (Mon, 15 Dec 2008) | 4 lines

Add notes to autoservice and pbx doxygen regarding a potential
deadlock scenario so that it is avoided in the future


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164421 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-15 19:52:19 +00:00
Joshua Colp
054e20548b Merged revisions 164257 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r164257 | file | 2008-12-15 11:41:22 -0400 (Mon, 15 Dec 2008) | 4 lines
  
  Make app_fax compatible with newer versions of spandsp. This remains backwards compatible with earlier versions though so do not fret.
  (closes issue #14073)
  Reported by: seandarcy
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-15 15:50:12 +00:00
Russell Bryant
85ad905561 Merged revisions 163449 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r163449 | russell | 2008-12-12 07:55:30 -0600 (Fri, 12 Dec 2008) | 34 lines

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

........
r163448 | russell | 2008-12-12 07:44:08 -0600 (Fri, 12 Dec 2008) | 26 lines

Resolve issues that could cause DTMF to be processed out of order.

These changes come from team/russell/issue_12658

1) Change autoservice to put digits on the head of the channel's frame readq 
   instead of the tail.  If there were frames on the readq that autoservice 
   had not yet read, the previous code would have resulted in out of order 
   processing.  This required a new API call to queue a frame to the head 
   of the queue instead of the tail.

2) Change up the processing of DTMF in ast_read().  Some of the problems 
   were the result of having two sources of pending DTMF frames.  There 
   was the dtmfq and the more generic readq.  Both were used for pending 
   DTMF in various scenarios.  Simplifying things to only use the frame 
   readq avoids some of the problems.

3) Fix a bug where a DTMF END frame could get passed through when it 
   shouldn't have.  If code set END_DTMF_ONLY in the middle of digit emulation,
   and a digit arrived before emulation was complete, digits would get 
   processed out of order.

(closes issue #12658)
Reported by: dimas
Tested by: russell, file
Review: http://reviewboard.digium.com/r/85/

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@163515 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-12 14:48:40 +00:00
Mark Michelson
e8cdcc6ab6 Merged revisions 162488 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r162488 | kpfleming | 2008-12-09 17:41:02 -0600 (Tue, 09 Dec 2008) | 1 line

it does help if the compiler attribute syntax is correct
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162490 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 23:45:41 +00:00
Russell Bryant
5964f2e0f1 Merged revisions 162414 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r162414 | russell | 2008-12-09 16:25:06 -0600 (Tue, 09 Dec 2008) | 16 lines

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

........
r162413 | russell | 2008-12-09 16:17:39 -0600 (Tue, 09 Dec 2008) | 8 lines

Remove the test_for_thread_safety() function completely.

The test is not valid.  Besides, if we actually suspected that recursive
mutexes were not working, we would get a ton of LOG_ERROR messages when
DEBUG_THREADS is turned on.

(inspired by a discussion on the asterisk-dev list)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162416 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 22:34:55 +00:00
Steve Murphy
6ceb1dd7c0 Merged revisions 162079 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r162079 | murf | 2008-12-09 10:18:03 -0700 (Tue, 09 Dec 2008) | 53 lines

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

........
r162013 | murf | 2008-12-09 09:31:55 -0700 (Tue, 09 Dec 2008) | 45 lines

(closes issue #14019)
Reported by: ckjohnsonme
Patches:
      14019.diff uploaded by murf (license 17)
Tested by: ckjohnsonme, murf

This crash was the result of a few small errors that
would combine in 64-bit land to result in a crash.

32-bit land might have seen these combine to mysteriously
drop the args to an application call, in certain
circumstances.

Also, in trying to find this bug, I spotted
a situation in the flex input, where, in passing
back a 'word' to the parser, it would allocate
a buffer larger than necessary. I changed the
usage in such situations, so that strdup was
not used, but rather, an ast_malloc, followed
by ast_copy_string.

I removed a field from the pval struct, in
u2, that was never getting used, and set in
one spot in the code. I believe it was an
artifact of a previous fix to make switch
cases work invisibly with extens.

And, for goto's I removed a '!' from
before a strcmp, that has been there
since the initial merging of AEL2, that
might prevent the proper target of a 
goto from being found. This was pretty
harmless on its own, as it would just
louse up a consistency check for users.

Many thanks to ckjohnsonme for providing
a simplified and complete set of information
about the bug, that helped considerably in
finding and fixing the problem.

Now, to get aelparse up and running again
in trunk, and out of its "horribly broken" state,
so I can run the regression suite!


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 17:32:49 +00:00
Sean Bright
fc975ab998 Merged revisions 161427 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r161427 | seanbright | 2008-12-05 16:08:43 -0500 (Fri, 05 Dec 2008) | 22 lines
  
  Merged revisions 161426 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ................
    r161426 | seanbright | 2008-12-05 16:02:20 -0500 (Fri, 05 Dec 2008) | 15 lines
    
    Merged revisions 161421 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.2
    
    ........
      r161421 | seanbright | 2008-12-05 15:50:23 -0500 (Fri, 05 Dec 2008) | 8 lines
      
      Fix build errors on FreeBSD (uint -> unsigned int).
      
      (closes issue #14006)
      Reported by: alphaque
      Patches:
            astobj2.h-patch uploaded by alphaque (license 259)
            (Slightly modified by seanbright)
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@161429 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-05 21:16:15 +00:00
Tilghman Lesher
6674ef2c22 Merged revisions 160208 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r160208 | tilghman | 2008-12-01 18:37:21 -0600 (Mon, 01 Dec 2008) | 10 lines
  
  Merged revisions 160207 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r160207 | tilghman | 2008-12-01 18:25:16 -0600 (Mon, 01 Dec 2008) | 3 lines
    
    Ensure that Asterisk builds with --enable-dev-mode, even on the latest gcc
    and glibc.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@160234 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-02 00:58:43 +00:00
Kevin P. Fleming
c3347e79a5 Merged revisions 159818 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r159818 | kpfleming | 2008-11-29 11:57:39 -0600 (Sat, 29 Nov 2008) | 18 lines
  
  incorporates r159808 from branches/1.4:
  ------------------------------------------------------------------------
  r159808 | kpfleming | 2008-11-29 10:58:29 -0600 (Sat, 29 Nov 2008) | 7 lines
  
  update dev-mode compiler flags to match the ones used by default on Ubuntu Intrepid, so all developers will see the same warnings and errors
  
  since this branch already had some printf format attributes, enable checking for them and tag functions that didn't have them
  
  format attributes in a consistent way
  
  
  ------------------------------------------------------------------------
  
  in addition:
  
  move some format attributes from main/utils.c to the header files they belong in, and fix up references to the relevant functions based on new compiler warnings
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@159851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-29 18:16:50 +00:00
Tilghman Lesher
e20e4281a0 Merged revisions 159050 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r159050 | tilghman | 2008-11-24 23:02:11 -0600 (Mon, 24 Nov 2008) | 10 lines
  
  Merged revisions 159025 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r159025 | tilghman | 2008-11-24 22:50:00 -0600 (Mon, 24 Nov 2008) | 3 lines
    
    System call ioperm is non-portable, so check for its existence in autoconf.
    (Closes issue #13863)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@159053 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-25 05:05:18 +00:00
Matthew Nicholson
6e242b3728 Merged revisions 158876 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r158876 | mnicholson | 2008-11-24 15:56:22 -0600 (Mon, 24 Nov 2008) | 7 lines
  
  Added EVENT_FLAG_AGI and used it for manager calls in res_agi.c
  
  (closes issue #13873)
  Reported by: fnordian
  Patches:
        ami_agievent.patch uploaded by fnordian (license 110)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158894 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-24 22:05:34 +00:00
Russell Bryant
b597520cb3 Merged revisions 158540 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r158540 | russell | 2008-11-21 16:12:37 -0600 (Fri, 21 Nov 2008) | 10 lines

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

........
r158539 | russell | 2008-11-21 16:05:55 -0600 (Fri, 21 Nov 2008) | 2 lines

When compiling with DEBUG_THREADS, report the real file/func/line for ao2_lock/ao2_unlock

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-21 22:13:10 +00:00
Mark Michelson
a76dd11ef2 Merged revisions 158133 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r158133 | mmichelson | 2008-11-20 12:20:00 -0600 (Thu, 20 Nov 2008) | 10 lines

Merged revisions 158072 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

........
r158072 | twilson | 2008-11-20 11:48:58 -0600 (Thu, 20 Nov 2008) | 2 lines

Begin on a crusade to end trailing whitespace!

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@158134 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-20 18:20:39 +00:00
Kevin P. Fleming
040bbb51c7 Merged revisions 157706 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r157706 | kpfleming | 2008-11-19 06:42:19 -0600 (Wed, 19 Nov 2008) | 5 lines
  
  make some corrections to the ast_agi_register_multiple(), ast_agi_unregister_multiple() and ast_agi_fdprintf() API calls to be consistent with API guidelines
  
  also, move UPGRADE.txt to UPGRADE-1.6.txt and make the new UPGRADE.txt contain information about upgrading between Asterisk 1.6 releases
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-19 13:03:50 +00:00
Tilghman Lesher
f21824e65a Merged revisions 157639 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r157639 | tilghman | 2008-11-18 19:02:45 -0600 (Tue, 18 Nov 2008) | 7 lines
  
  Starting with a change to ensure that ast_verbose() preserves ABI compatibility
  in 1.6.1 (as compared to 1.6.0 and versions of 1.4), this change also
  deprecates the use of Asterisk with FreeBSD 4, given the central use of va_copy
  in core functions.  va_copy() is C99, anyway, and we already require C99 for
  other purposes, so this isn't really a big change anyway.  This change also
  simplifies some of the core ast_str_* functions.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157641 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-19 01:08:46 +00:00
Mark Michelson
892f98a1e6 Merged revisions 157306 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r157306 | mmichelson | 2008-11-18 12:31:08 -0600 (Tue, 18 Nov 2008) | 20 lines

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

........
r157305 | mmichelson | 2008-11-18 12:25:55 -0600 (Tue, 18 Nov 2008) | 12 lines

Fix a crash in the end_bridge_callback of app_dial and
app_followme which would occur at the end of an attended
transfer. The error occurred because we initially stored
a pointer to an ast_channel which then was hung up due
to a masquerade.

This commit adds a "fixup" callback to the bridge_config
structure to allow for end_bridge_callback_data to be
changed in the case that a new channel pointer is needed
for the end_bridge_callback.


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157308 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-18 18:32:54 +00:00
Mark Michelson
2831947109 This is the 1.6.1 version of trunk commit 156883.
It is functionally equivalent to the 1.6.0 commit



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@156894 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-14 16:57:04 +00:00
Sean Bright
839cb83ea3 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.1@155556 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-09 01:43:14 +00:00
Russell Bryant
2f4460b0ea Merged revisions 155516 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r155516 | russell | 2008-11-08 15:46:43 -0600 (Sat, 08 Nov 2008) | 3 lines

 - Check for failure when putting the packet in the ast_str
 - fix a spelling error in a header file

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@155517 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-08 21:48:23 +00:00
Russell Bryant
d63da12ab1 Merged revisions 155244 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r155244 | russell | 2008-11-07 09:01:02 -0600 (Fri, 07 Nov 2008) | 4 lines

Clarify which part of OBJ_MULTIPLE is not implemented, and under what case it
is perfectly fine to use.  (Inspired by a question I received about my last
commit.)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@155245 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-07 15:01:45 +00:00
Sean Bright
2a20c5e747 Merged revisions 154919 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r154919 | seanbright | 2008-11-05 17:01:22 -0500 (Wed, 05 Nov 2008) | 2 lines
  
  Fix a problem found while building res_snmp.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@154920 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-05 22:02:19 +00:00
Kevin P. Fleming
d660c03fdc Merged revision 153709 from trunk
------------------------------------------------------------------------
r153709 | kpfleming | 2008-11-02 17:34:39 -0600 (Sun, 02 Nov 2008) | 3 lines

instead of trying to forcibly load res_agi when app_stack is loaded (even if the administrator didn't want it loaded), use GCC weak symbols to determine whether it was loaded already or not; if it was loaded, then use it.


------------------------------------------------------------------------



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@153711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-03 00:21:04 +00:00
Russell Bryant
bdb5cf6f46 Merged revisions 153652 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r153652 | russell | 2008-11-02 14:06:03 -0600 (Sun, 02 Nov 2008) | 10 lines

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

........
r153651 | russell | 2008-11-02 13:51:17 -0600 (Sun, 02 Nov 2008) | 2 lines

features.h depends on linkedlists.h, so include it

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@153653 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-02 20:07:30 +00:00
Terry Wilson
239f1d53bc 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.1@153266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-31 22:11:11 +00:00
Mark Michelson
4d4e20eb54 This commit contains the bug fixes and documentation updates
which were committed to trunk in revision 153223. I blocked that
commit from 1.6.1 since it also contained a new feature.

Note to self: Separate commits so that you don't end up with
a situation where part of a commit should be merged but part
should be blocked from stable branches.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@153225 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-31 20:10:40 +00:00
Russell Bryant
7045e5aa91 Merged revisions 152887 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r152887 | russell | 2008-10-30 14:28:06 -0500 (Thu, 30 Oct 2008) | 7 lines

Fix a bug in AST_SCHED_REPLACE_UNREF().  The reference count of the object
_must_ be increased before creating the scheduler entry.  Otherwise, you
create a race condition where the reference count may hit zero and the
object can disappear out from under you.  This could also would have
incorrectly decreased the reference count in the case that the scheduler
add failed.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@152900 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-30 19:31:40 +00:00
Steve Murphy
f1da1c3957 Merged revisions 152536 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r152536 | murf | 2008-10-28 23:01:00 -0600 (Tue, 28 Oct 2008) | 57 lines

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

........
r152535 | murf | 2008-10-28 22:36:32 -0600 (Tue, 28 Oct 2008) | 46 lines

The magic trick to avoid this crash is not to
try to find the channel by name in the list,
which is slow and resource consuming, but rather
to pay attention to the result codes from the
ast_bridge_call, to which I added the 
AST_PBX_NO_HANGUP_PEER_PARKED value, which
now are returned when a channel is parked.
Why? because CDR's aren't generated via parking,
so nothing is needed, but if a transfer occurred,
there are critical things I need.

If you get AST_PBX_KEEPALIVE,
then don't touch the channel pointer.

If you get AST_PBX_NO_HANGUP_PEER, or
AST_PBX_NO_HANGUP_PEER_PARKED, then don't
touch the peer pointer.

Updated the several places where the results
from a bridge were not being properly obeyed,
and fixed some code I had introduced so that
the results of the bridge were not overridden 
(in trunk).

All the places that previously tested for 
AST_PBX_NO_HANGUP_PEER now have to check for
both AST_PBX_NO_HANGUP_PEER and AST_PBX_NO_HANGUP_PEER_PARKED.

I tested this against the 4 common parking
scenarios:


1. A calls B; B answers; A parks B; B hangs up while A is getting the parking
slot announcement, immediately after being put on hold.

2. A calls B; B answers; A parks B; B hangs up after A has been hung up, but
before the park times out.

3. A calls B; B answers; B parks A; A hangs up while B is getting the parking slot announcement, immediately after being put on hold.

4. A calls B; B answers; B parks A; A hangs up after B has been hung up, but before the park times out.


No crash.

I also ran the scenarios above against valgrind, and accesses looked good.



........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@152537 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-29 05:09:20 +00:00
Kevin P. Fleming
f0c712cf4b Merged revisions 151101 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r151101 | kpfleming | 2008-10-19 22:11:28 +0300 (Sun, 19 Oct 2008) | 13 lines
  
  cleaup of the TCP/TLS socket API:
  
  1) rename 'struct server_args' to 'struct ast_tcptls_session_args', to follow coding guidelines
  
  2) make ast_make_file_from_fd() static and rename it to something that indicates what it really is for (again coding guidelines)
  
  3) rename address variables inside 'struct ast_tcptls_session_args' to be more descriptive (dare i say it... coding guidelines)
  
  4) change ast_tcptls_client_start() to use the new 'remote_address' field of the session args for the destination of the connection, and use the 'local_address' field to bind() the socket to the proper source address, if one is supplied
  
  5) in chan_sip, ensure that we pass in the PP address we are bound to when creating outbound (client) connections, so that our connections will appear from the correct address
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@151135 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-19 19:33:42 +00:00
Tilghman Lesher
2f69e7a63c Merged revisions 150580 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r150580 | tilghman | 2008-10-17 11:34:29 -0500 (Fri, 17 Oct 2008) | 2 lines
  
  Fix the FRACK! warnings in chan_iax2 when POKE/LAGRQ packets are not answered.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@150606 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-17 16:46:13 +00:00
Mark Michelson
fdd9a6f9b6 Merged revisions 149205 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
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


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@149206 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-14 23:05:14 +00:00
Tilghman Lesher
e65c411c8f Merged revisions 149199 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r149199 | tilghman | 2008-10-14 17:38:06 -0500 (Tue, 14 Oct 2008) | 8 lines
  
  Add additional memory debugging to several core APIs, and fix several memory
  leaks found with these changes.
  (Closes issue #13505, closes issue #13543)
  Reported by: mav3rick, triccyx
   Patches: 
         20081001__bug13505.diff.txt uploaded by Corydon76 (license 14)
   Tested by: mav3rick, triccyx
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@149202 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-14 22:42:17 +00:00
Sean Bright
5f980bc229 Merged revisions 148200 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r148200 | seanbright | 2008-10-09 20:42:13 -0400 (Thu, 09 Oct 2008) | 12 lines

Don't include logger.h in asterisk.h by default as it is causing problems building
app_voicemail.  Instead, include it where it is needed.  This turned out to be a
relatively minor issue because other headers include logger.h as well.

Need to test -addons before merging this back to 1.6.0.

(closes issue #13605)
Reported by: tomo1657
Patches: 
      13605_seanbright.diff uploaded by seanbright (license 71)
Tested by: mmichelson

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@148240 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-10 01:33:34 +00:00
Michiel van Baak
df779dd50c Merged revisions 147899 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r147899 | mvanbaak | 2008-10-09 19:48:53 +0200 (Thu, 09 Oct 2008) | 5 lines
  
  only include this for OpenBSD. At least FreeBSD is borked when including it
  
  (closes issue #13649)
  Reported by: ys
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@147901 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-09 17:54:05 +00:00
Steve Murphy
2c1bfe7643 Merged revisions 147807 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r147807 | murf | 2008-10-09 08:17:33 -0600 (Thu, 09 Oct 2008) | 15 lines

(closes issue #13557)
Reported by: nickpeirson
Patches:
      pbx.c.patch uploaded by nickpeirson (license 579)
      replace_bzero+bcopy.patch uploaded by nickpeirson (license 579)
Tested by: nickpeirson, murf

1. replaced all refs to bzero and bcopy to memset and memmove instead.
2. added a note to the CODING-GUIDELINES
3. add two macros to asterisk.h to prevent bzero, bcopy from creeping
   back into the source
4. removed bzero from configure, configure.ac, autoconfig.h.in



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@147811 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-09 15:06:21 +00:00
Tilghman Lesher
69eb9d08ac Merged revisions 146928 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r146928 | tilghman | 2008-10-06 18:21:02 -0500 (Mon, 06 Oct 2008) | 3 lines
  
  Update documentation; AST_THREADSTORAGE() in trunk only takes a single
  argument.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@146930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-06 23:22:55 +00:00
Jeff Peeler
595d37e746 Merged revisions 146923 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r146923 | jpeeler | 2008-10-06 18:08:21 -0500 (Mon, 06 Oct 2008) | 3 lines

Similar to r143204, masquerade the channel in the case of Park being called from AGI.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@146924 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-06 23:08:51 +00:00
Jeff Peeler
54fda83a25 Merged revisions 146920 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r146920 | jpeeler | 2008-10-06 17:59:58 -0500 (Mon, 06 Oct 2008) | 2 lines

Mvanbaak said this was needed to compile on OpenBSD, so put it in the OpenBSD section.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@146921 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-06 23:03:05 +00:00
Michiel van Baak
a22f5b3bf0 Merged revisions 146807 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r146807 | mvanbaak | 2008-10-06 23:18:13 +0200 (Mon, 06 Oct 2008) | 2 lines
  
  make aescrypt.c compile on OpenBSD again
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@146874 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-06 21:53:31 +00:00
Kevin P. Fleming
bc5b69d250 Merged revisions 144949-144951 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r144949 | kpfleming | 2008-09-27 10:52:56 -0500 (Sat, 27 Sep 2008) | 17 lines
  
  Merged revisions 144924-144925 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r144924 | kpfleming | 2008-09-27 10:00:48 -0500 (Sat, 27 Sep 2008) | 6 lines
    
    improve header inclusion process in a few small ways:
    
      - it is no longer necessary to forcibly include asterisk/autoconfig.h; every module already includes asterisk.h as its first header (even before system headers), which serves the same purpose
      - astmm.h is now included by asterisk.h when needed, instead of being forced by the Makefile; this means external modules will build properly against installed headers with MALLOC_DEBUG enabled
      - simplify the usage of some of these headers in the AEL-related stuff in the utils directory
  ........
    r144925 | kpfleming | 2008-09-27 10:13:30 -0500 (Sat, 27 Sep 2008) | 2 lines
    
    fix some minor issues with rev 144924
  ........
................
  r144950 | kpfleming | 2008-09-27 11:10:33 -0500 (Sat, 27 Sep 2008) | 2 lines
  
  fix bugs caused by r144949 when MALLOC_DEBUG is defined
................
  r144951 | kpfleming | 2008-09-27 11:17:43 -0500 (Sat, 27 Sep 2008) | 1 line
  
  remove incorrect comment
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@144993 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-27 16:49:27 +00:00
Steve Murphy
7c3b7122f3 Merged revisions 144523 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r144523 | murf | 2008-09-25 15:18:12 -0600 (Thu, 25 Sep 2008) | 13 lines

I added a little verbage to hashtab for the hashtab_destroy func.
It was pretty sparsely documented.

This update fleshes out the pbx_lua module, to 
add the switch statements to the extensions in the
extensions.lua file, as well as removing them when
the module is unloaded.

Many thanks to Matt Nicholson for his fine
contribution!



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@144529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-25 21:25:00 +00:00
Steve Murphy
bc73329607 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.1@142678 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-12 05:03:09 +00:00
Mark Michelson
8fedd0288d Merged revisions 139554 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r139554 | mmichelson | 2008-08-22 14:45:41 -0500 (Fri, 22 Aug 2008) | 16 lines

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

........
r139553 | mmichelson | 2008-08-22 14:45:19 -0500 (Fri, 22 Aug 2008) | 8 lines

Fix compilation when DEBUG_THREAD_LOCALS is selected

(closes issue #13298)
Reported by: snuffy
Patches:
      bug13298_20080822.diff uploaded by snuffy (license 35)


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@139556 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-22 19:46:33 +00:00
Sean Bright
7a636521b1 Fix this again so we can compile with shadow warnings enabled and IMAP chosen
in voicemail.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@137112 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-10 21:10:04 +00:00
Tilghman Lesher
b7571f835d Merged revisions 136946 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r136946 | tilghman | 2008-08-09 10:25:36 -0500 (Sat, 09 Aug 2008) | 10 lines

Merged revisions 136945 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r136945 | tilghman | 2008-08-09 10:24:36 -0500 (Sat, 09 Aug 2008) | 2 lines

Regression fixes for Solaris

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@136947 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-09 15:26:27 +00:00
Steve Murphy
a40f1cc1c5 Merged revisions 136726 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r136726 | murf | 2008-08-07 18:15:34 -0600 (Thu, 07 Aug 2008) | 32 lines


(closes issue #13236)
Reported by: korihor

Wow, this one was a challenge!

I regrouped and ran a new strategy for
setting the ~~MACRO~~ value; I set it once
per extension, up near the top. It is only
set if there is a switch in the extension.

So, I had to put in a chunk of code to detect
a switch in the pval tree.

I moved the code to insert the set of ~~exten~~
up to the beginning of the gen_prios routine, 
instead of down in the switch code.

I learned that I have to push the detection
of the switches down into the code, so everywhere
I create a new exten in gen_prios, I make sure
to pass onto it the values of the mother_exten
first, and the exten next.

I had to add a couple fields to the exten
struct to accomplish this, in the ael_structs.h
file. The checked field makes it so we don't
repeat the switch search if it's been done.

I also updated the regressions.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@136746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-08 00:48:35 +00:00
Kevin P. Fleming
a67af1e018 Merged revisions 136541 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@136542 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-07 17:44:20 +00:00
Sean Bright
4fb07fb0c1 Merge in a few more changes. This time the include/ directory.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@136402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-07 14:36:59 +00:00