Commit Graph

1382 Commits

Author SHA1 Message Date
David Vossel
0ebd53bba8 remove empty audiohook write list on channel
If a channel has an audiohook write list created on it, that
list stays on the channel until the channel is destroyed.  There
is no reason to keep that list on the channel if it becomes empty.
If it is empty that just means we are doing needless translating
for every ast_read and ast_write.  This patch removes the audiohook
list from the channel once it is detected to be empty on either a
read or write.  If a audiohook is added back to the channel after
this list is destroyed, the list just gets recreated as if it never
existed to begin with.

(closes issue #17630)
Reported by: manvirr

Review: https://reviewboard.asterisk.org/r/799/




git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@279945 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-27 20:33:40 +00:00
Jeff Peeler
20454a45d2 Provide a default value for DAHDI_TRANSCODE so when DAHDI is not installed
menuselect doesn't get confused:
Unknown value '' found in build_tools/menuselect-deps for DAHDI_TRANSCODE


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@279344 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-24 23:27:22 +00:00
Tilghman Lesher
8618bacfd8 Do not queue up DTMF frames while a call is on hold.
(Fixes ABE-2110)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@278167 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-20 20:59:06 +00:00
Russell Bryant
938b6264ff Document that a leading and trailing slash is expected for test categories.
Also, emit a warning if a test is registered without one of these.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@275021 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-09 15:33:08 +00:00
Tilghman Lesher
14550f93d0 Have the DEADLOCK_AVOIDANCE macro warn when an unlock fails, to help catch potentially large software bugs.
(closes issue #17407)
 Reported by: pdf
 Patches: 
       20100527__issue17407.diff.txt uploaded by tilghman (license 14)
 
Review: https://reviewboard.asterisk.org/r/751/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@273793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-02 21:36:39 +00:00
Russell Bryant
0dbe3c9921 Backport unit test API to 1.4.
Review: https://reviewboard.asterisk.org/r/750/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@272878 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-28 18:34:18 +00:00
Russell Bryant
aafa3c7464 Remove an unnecessary assignment that causes a DEBUG_THREADS build failure on mac os x.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271340 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 18:54:09 +00:00
Russell Bryant
f311d0ac18 Fix a build problem on Mac OS X with DEBUG_THREADS enabled.
This set of changes was already in trunk.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@271339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 18:44:38 +00:00
Tilghman Lesher
43cd1e6f6a Make the default install path appear to be /usr on Linux, instead of /usr/local.
Also, reorganize the options, so that they're more alphabetical.

(closes issue #17013)
 Reported by: klaus3000


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@267759 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-04 01:16:26 +00:00
Mark Michelson
bc766d5b69 1.4 version of the dead PLC code fix.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@267539 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-03 17:39:18 +00:00
Terry Wilson
7e9a71f5d8 Merged revisions 265320,265467 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r265320 | twilson | 2010-05-24 14:06:40 -0500 (Mon, 24 May 2010) | 14 lines
  
  Add the FullyBooted AMI event
  
  It is possible to connect to the manager interface before all Asterisk modules
  are loaded. To ensure that an application does not send AMI actions that might
  require a module that has not yet loaded, the application can listen for the
  FullyBooted manager event. It will be sent upon connection if all modules have
  been loaded, or as soon as loading is complete. The event:
  
     Event: FullyBooted
     Privilege: system,all
     Status: Fully Booted
  
  Review: https://reviewboard.asterisk.org/r/639/
........
  r265467 | twilson | 2010-05-24 17:21:58 -0500 (Mon, 24 May 2010) | 1 line
  
  Merge the rest of the FullyBooted patch
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@265570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-25 13:33:21 +00:00
Mark Michelson
ed585b5bb3 Don't hang up on a queue caller if the file we attempt to play does not exist.
This also fixes a documentation mistake in file.h that made my original attempt
to correct this problem not work correctly.

(closes issue #17061)
Reported by: RoadKill


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@265089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-21 20:59:14 +00:00
Mark Michelson
94238573fa Fix grammatical error in comment.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@264999 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-21 16:53:53 +00:00
Mark Michelson
b91ff0498e Allow ast_safe_sleep to defer specific frames until after the sleep has concluded.
From reviewboard

Background:
A Digium customer discovered a somewhat odd bug. The setup is that parties A
and B are bridged, and party A places party B on hold. While party B is 
listening to hold music, he mashes a bunch of DTMF. Party A takes party
B off hold while this is happening, but party B continues to hear hold
music. I could reproduce this about 1 in 5 times.

The issue:
When DTMF features are enabled and a user presses keys, the channel that
the DTMF is streamed to is placed in an ast_safe_sleep for 100 ms, the
duration of the emulated tone. If an AST_CONTROL_UNHOLD frame is read
from the channel during the sleep, the frame is dropped. Thus the
unhold indication is never made to the channel that was originally placed
on hold.

The fix:
Originally, I discussed with Kevin possible ways of fixing the specific
problem reported. However, we determined that the same type of problem
could happen in other situations where ast_safe_sleep() is used. Using
autoservice as a model, I modified ast_safe_sleep_conditional() to
defer specific frame types so they can be re-queued once the sleep has
finished. I made a common function for determining if a frame should
be deferred so that there are not two identical switch blocks to
maintain.

Review: https://reviewboard.asterisk.org/r/674/



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@264996 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-21 16:28:34 +00:00
Mark Michelson
610c1dc6bf 1.4 version of PLC fix.
Analogous to trunk revision 264452, but without the change
to chan_sip since it is not necessary in this branch.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@264541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-20 15:59:44 +00:00
Tilghman Lesher
136073265c Internal timing is now on by default, if you're using DAHDI 2.3 or above.
The reason for ensuring DAHDI 2.3 or above is that this version ensures that
a timer is always available, whereas in previous versions, it was possible
for DAHDI to be loaded, but have no drivers to actually generate timing.  If
internal_timing was turned on in this circumstance, a complete lack of audio
would result.  This is the reason why internal_timing was not on by default.
However, now that DAHDI ensures the availability of a timer, there is no
reason for this setting to be off (and in fact, it solves a great many initial
user problems).

(closes issue #15932)
 Reported by: dimas
 Patches: 
       20100519__issue15932.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@264248 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-19 17:41:29 +00:00
David Vossel
49c20ee9c5 Fixes crash in audiohook_write_list
The middle_frame in the audiohook_write_list function was
being freed if a audiohook manipulator returned a failure.
This is incorrect logic.  This patch resolves this and
adds detailed descriptions of how this function should work
and why manipulator failures must be ignored.

(closes issue #17052)
Reported by: dvossel
Tested by: dvossel

(closes issue #16196)
Reported by: atis

Review: https://reviewboard.asterisk.org/r/623/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@260049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-29 15:31:02 +00:00
Tilghman Lesher
2b74f9be7b Allow application options with arguments to contain parentheses, through a variety of escaping techniques.
Fixes SWP-1194 (ABE-2143).

Review: https://reviewboard.asterisk.org/r/604/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@257544 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-15 21:23:24 +00:00
Jason Parker
c94931c9a4 Fix DEBUG_THREADS issue with out-of-tree modules.
Take 2, without ABI breakage this time.

Review: https://reviewboard.asterisk.org/r/588/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@254714 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-25 19:39:23 +00:00
Mark Michelson
6eca8e3059 Add doxygen for acl.h
Review: https://reviewboard.asterisk.org/r/528



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@254552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-25 17:33:35 +00:00
Jason Parker
8371df4e7b Revert revisions 254046 and 254098.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@254161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-23 22:45:55 +00:00
Jason Parker
16a9a742a4 Allow out-of-tree modules to load, regardless of DEBUG_THREADS/DEBUG_CHANNEL_LOCKS differences.
This can be guaranteed by forcing the ABI to no longer change when these compiler flags are set.
An unfortunate side-effect to this is that there is an ABI change here.  However, there is some
mitigation.  Existing modules *will* fail to load since they would require functions that no
longer exist.

Review: https://reviewboard.asterisk.org/r/508/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@254046 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-23 21:07:54 +00:00
Terry Wilson
1b2dbf6c1a Revert API change in release branches
This re-renames ast_rtp_update_source to ast_rtp_new_source


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@253158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-17 16:25:52 +00:00
Terry Wilson
529e8af144 Merged revisions 252089 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r252089 | twilson | 2010-03-12 16:04:51 -0600 (Fri, 12 Mar 2010) | 20 lines
  
  Only change the RTP ssrc when we see that it has changed
  
  This change basically reverts the change reviewed in
  https://reviewboard.asterisk.org/r/374/ and instead limits the
  updating of the RTP synchronization source to only those times when we
  detect that the other side of the conversation has changed the ssrc.
  
  The problem is that SRCUPDATE control frames are sent many times where
  we don't want a new ssrc, including whenever Asterisk has to send DTMF
  in a normal bridge. This is also not the first time that this mistake
  has been made. The initial implementation of the ast_rtp_new_source
  function also changed the ssrc--and then it was removed because of
  this same issue. Then, we put it back in again to fix a different
  issue. This patch attempts to only change the ssrc when we see that
  the other side of the conversation has changed the ssrc.
  
  It also renames some functions to make their purpose more clear.
  
  Review: https://reviewboard.asterisk.org/r/540/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@252175 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-13 00:30:04 +00:00
Tilghman Lesher
012c6fc5e2 Only rebuild bison and flex source files on demand, if bison and flex are detected by the configure script.
Changed after discussion on the -dev list about possible unnecessary build
failures, due to checkouts/untars causing these special source files to
possibly be newer than their resulting C files.  This should additionally
ensure that nobody need learn about extra Makefile arguments to ensure the
proper files get rebuilt when changes are made to these special source files.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@242520 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-24 06:33:01 +00:00
Tilghman Lesher
2418c3fe1e Add a flag to disable the Background behavior, for AGI users.
This is in a section of code that relates to two other issues, namely
issue #14011 and issue #14940), one of which was the behavior of
Background when called with a context argument that matched the current
context.  This fix broke FreePBX, however, in a post-Dial situation.
Needless to say, this is an extremely difficult collision of several
different issues.  While the use of an exception flag is ugly, fixing all
of the issues linked is rather difficult (although if someone would like
to propose a better solution, we're happy to entertain that suggestion).
(closes issue #16434)
 Reported by: rickead2000
 Patches: 
       20091217__issue16434.diff.txt uploaded by tilghman (license 14)
       20091222__issue16434__1.6.1.diff.txt uploaded by tilghman (license 14)
 Tested by: rickead2000


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@237405 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-04 18:19:00 +00:00
Sean Bright
f1e72bf7c7 Try a test compile to see if PTHREAD_ONCE_INIT requires extra braces.
There was conditional code (based on build platform) to optioinally wrap
PTHREAD_ONCE_INIT in braces that was removed since it is fixed in newer versions
of Solaris/OpenSolaris, but I am still running into it on Solaris 10 x86 so add
a configure-time check for it.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@236585 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-28 15:12:08 +00:00
Jeff Peeler
8291fb5083 Correct CDR dispositions for BUSY/FAILED
This patch is simple in that it reorders the disposition defines so that the fix
for issue 12946 works properly (the default CDR disposition was changed to
AST_CDR_NOANSWER). Also, the AST_CDR_FLAG_ORIGINATED flag was set in ast_call to
ensure all CDR records are written.

The side effects of CDR changes are scary, so I'm documenting the test cases
performed to attempt to catch any regressions. The following tests were all
performed using 1.4 rev 195881 vs head (235571) + patch:

A calls B
C calls B (busy)
Hangup C
Hangup A

(Both SIP and features)
A calls B
A blind transfers to C
Hangup C

(Both SIP and features)
A calls B
A attended transfers to C
Hangup C

A calls B
A attended transfers to C (SIP)
C blind transfers to A (features)
Hangup A

All of the test scenario CDRs matched.

The following tests were performed just with the patch to ensure proper operation
(with unanswered=yes):

exten =>s,1,Answer
exten =>s,n,ResetCDR(w)
exten =>s,n,ResetCDR(w)

exten =>s,1,ResetCDR(w)
exten =>s,n,ResetCDR(w)

(closes issue #16180)
Reported by: aatef
Patches: 
      bug16180.patch uploaded by jpeeler (license 325)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@235635 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-18 22:29:51 +00:00
Russell Bryant
4dfd9d4800 Set a module load priority for format modules.
A recent change to app_voicemail made it such that the module now assumes that
all format modules are available while processing voicemail configuration.
However, when autoloading modules, it was possible that app_voicemail was
loaded before the format modules. Since format modules don't depend on
anything, set a module load priority on them to ensure that they get loaded
first when autoloading.

This version of the patch is specific to Asterisk 1.4 and 1.6.0.  These versions
did not already support module load priority in the module API.  This adds a
trivial version of this which is just a module flag to include it in a pass before
loading "everything".

Thanks to mmichelson for the review!

(closes issue #16412)
Reported by: jiddings
Tested by: russell

Review: https://reviewboard.asterisk.org/r/445/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@233782 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-09 15:14:21 +00:00
Matthew Nicholson
6a680d9b28 Remove duplicate entries from voicemail format lists. This prevents app_voicemail from entering an infinite loop when the same format is specified twice in the format list.
(closes issue #15625)
Reported by: Shagg63
Tested by: mnicholson

Review: https://reviewboard.asterisk.org/r/429/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@231614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-30 21:11:44 +00:00
Matthew Nicholson
a3887d4511 Perform limited bounds checking when destroying ast_mutex_t structures to make sure we don't try to use negative indices.
(closes issue #15588)
Reported by: zerohalo
Patches:
      20090820__issue15588.diff.txt uploaded by tilghman (license 14)
Tested by: zerohalo


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@228827 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-09 14:16:03 +00:00
Tilghman Lesher
41f0b0de9c Fix documentation (pointed out by TheDavidFactor on #-dev)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@226304 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-28 18:02:25 +00:00
Tzafrir Cohen
217a115da8 detect ARM Linux EABI OSARCH as linux-gnu instead of linux-gnueabi
* Set OSARCH to linux-gnu even if host_os is linux-gnueabi
* When checking if we are Linux, check OSARCH rather than host_os

The newer ARM ABI ("EABI") shows the OS name 'linux-gnueabi' rather than
'linux-gnu' . This patch sets OSARCH to be 'linux-gnu' even in such a case.

OSARCH is tested for the value of 'linux-gnu' in one or two places in the
tree. This patch also fixes the check libcap to check for $OSARCH rather
than $host_os .

See also: http://wiki.debian.org/ArmEabiPort


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@225957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-26 22:13:25 +00:00
Tilghman Lesher
6e8a455534 Fix documentation for ast_softhangup() and correct the misuse thereof.
(closes issue #16103)
 Reported by: majorbloodnok


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@225105 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-21 16:02:12 +00:00
Russell Bryant
9d65850202 Isolate frames returned from a DSP instance or codec translator.
The reasoning for these changes are the same as what I wrote in the commit
message for rev 222878.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@224931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-21 02:59:54 +00:00
Russell Bryant
ff6a5575ad Make filestream frame handling safer by isolating frames before returning them.
This patch is related to a number of issues on the bug tracker that show
crashes related to freeing frames that came from a filestream.  A number of
fixes have been made over time while trying to figure out these problems, but
there re still people seeing the crash.  (Note that some of these bug reports
include information about other problems.  I am specifically addressing
the filestream frame crash here.)

I'm still not clear on what the exact problem is.  However, what is _very_
clear is that we have seen quite a few problems over time related to unexpected
behavior when we try to use embedded frames as an optimization.  In some cases,
this optimization doesn't really provide much due to improvements made in other
areas.

In this case, the patch modifies filestream handling such that the embedded frame
will not be returned.  ast_frisolate() is used to ensure that we end up with a
completely mallocd frame.  In reality, though, we will not actually have to malloc
every time.  For filestreams, the frame will almost always be allocated and freed
in the same thread.  That means that the thread local frame cache will be used.
So, going this route doesn't hurt.

With this patch in place, some people have reported success in not seeing the
crash anymore.

(SWP-150)
(AST-208)
(ABE-1834)

(issue #15609)
Reported by: aragon
Patches:
      filestream_frisolate-1.4.diff2.txt uploaded by russell (license 2)
Tested by: aragon, russell

(closes issue #15817)
Reported by: zerohalo
Tested by: zerohalo

(closes issue #15845)
Reported by: marhbere

Review: https://reviewboard.asterisk.org/r/386/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@222878 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-08 19:45:47 +00:00
David Vossel
3e5979a040 fixes an ast_netsock_list memory leak.
ABE-1998
Review: https://reviewboard.asterisk.org/r/395/



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@222877 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-08 19:45:15 +00:00
Kevin P. Fleming
2ad7cb7e87 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.4@222152 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-06 01:16:36 +00:00
Terry Wilson
96564de25e Change the SSRC by default when our media stream changes
Be default, change SSRC when doing an audio stream changes Asterisk doesn't
honor marker bit when reinvited to already-bridged RTP streams,resulting in
far-end stack discarding packets with "old" timestamps that areactually part of
a new stream.  This patch sends AST_CONTROL_SRCUPDATE whenever there is a
reinvite, unless the 'constantssrc' is set to true in sip.conf.

The original issue reported to Digium support detailed the following situation:
ITSP <-> Asterisk 1.4.26.2 <-> SIP-based Application Server Call comes in
fromITSP, Asterisk dials the app server which sends a re-invite back
toAsterisk--not to negotiate to send media directly to the ITSP, but to
indicatethat it's changing the stream it's sending to Asterisk.  The app
servergenerates a new SSRC, sequence numbers, timestamps, and sets the marker
bit on the new stream.  Asterisk passes through the teimstamp of the new stream,
butdoes not reset the SSRC, sequence numbers, or set the marker bit.

When the timestamp on the new stream is older than the timestamp on the
originalstream, the ITSP (which doesn't know there has been any change) discards
the newframes because it thinks they are too old.  This patch addresses this by
changing the SSRC on a stream update unless constantssrc=true is set in
sip.conf.

Review: https://reviewboard.asterisk.org/r/374/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@221086 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-30 14:49:11 +00:00
Matthew Nicholson
ea3f81a68f Prevent a potential race condition and crash when hanging up a channel by removing the channel from the channel list before begining channel tear down.
This fix may potentially cause problems with CDR backends that access the channel a CDR is associated with via the channel list.  This fix makes the channel unavabile at the time when the CDR backend is invoked.  This has been documented in include/asterisk/cdr.h.

(closes issue #15316)
Reported by: vmarrone
Tested by: mnicholson

Review: https://reviewboard.asterisk.org/r/362/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@219136 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-17 14:58:39 +00:00
Michiel van Baak
8edfe07e6d make asterisk compile under devmode with DEBUG_THREADS enabled on OpenBSD
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@216435 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-04 13:56:10 +00:00
David Vossel
ed1951d895 Merge code associated with AST-2009-006
(closes issue #12912)
Reported by: rathaus
Tested by: tilghman, russell, dvossel, dbrooks



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@216000 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-03 18:32:32 +00:00
Tilghman Lesher
4b133920a5 Use autoconf to detect libcurl, as this enables cross-compilation checks, something we didn't allow before.
(closes issue #15714)
 Reported by: pprindeville
 Patches: 
       20090813__issue15714.diff.txt uploaded by tilghman (license 14)
 Tested by: pprindeville


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@214517 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-27 21:45:34 +00:00
Tilghman Lesher
7215954ccf One more build system change, to make the descriptions look better, if we have better information.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@214436 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-27 16:53:58 +00:00
Tilghman Lesher
60fd401064 Make autoheader descriptions render correctly in our autoconfig.h file.
(Figured out while working with issue #14906)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@214357 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-27 16:03:50 +00:00
Tilghman Lesher
1ea4af21ca Permit DEBUG_FD_LEAKS to be used with C++ source files.
(closes issue #15698)
 Reported by: slavon
 Patches: 
       20090817__issue15698.diff.txt uploaded by tilghman (license 14)
 Tested by: slavon, tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@213559 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-21 16:52:53 +00:00
Tilghman Lesher
ca0f026f41 Reverting index() fix, applying a different methodology, based upon developer discussions.
(related to issue #15639)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@210066 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-03 16:11:29 +00:00
Tilghman Lesher
f5a5763ee9 Helps if we export the index() function.
(Related to issue #15639)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@210065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-03 15:42:10 +00:00
Tilghman Lesher
a70128e190 Apparently, some platforms don't have the index() function.
(closes issue #15639)
 Reported by: nmav


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@210064 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-03 15:39:41 +00:00
Tilghman Lesher
98dcd8946e Export symbols for functions included in our compatibility headers.
(closes issue #15556)
 Reported by: smw1218


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@208083 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-22 20:23:53 +00:00