]> git.ipfire.org Git - thirdparty/asterisk.git/log
thirdparty/asterisk.git
18 years agoFix func_timeout to take values in floating point so 1.5 actually means
Russell Bryant [Thu, 23 Aug 2007 19:21:53 +0000 (19:21 +0000)] 
Fix func_timeout to take values in floating point so 1.5 actually means
1.5 seconds instead of being rounded.
(closes issue #10540, reported by spendergrass, patch by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80539 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago*sigh*
Jason Parker [Thu, 23 Aug 2007 17:14:05 +0000 (17:14 +0000)] 
*sigh*

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80507 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agouse autotagged externals
Jason Parker [Thu, 23 Aug 2007 17:11:48 +0000 (17:11 +0000)] 
use autotagged externals

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80505 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoreport the actual channel number that was unregistered, instead of assuming that...
Kevin P. Fleming [Thu, 23 Aug 2007 17:08:25 +0000 (17:08 +0000)] 
report the actual channel number that was unregistered, instead of assuming that the interface list consists of channels 1 through <x> with no gaps in the sequence

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80501 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix some code where it was possible for a reference to a peer to not get
Russell Bryant [Thu, 23 Aug 2007 17:02:50 +0000 (17:02 +0000)] 
Fix some code where it was possible for a reference to a peer to not get
released when it should.  Thank you to Marta Carbone for pointing this out!

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80499 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThis is a hack to maintain old behavior of chan_iax2. This ensures that if
Russell Bryant [Thu, 23 Aug 2007 16:53:52 +0000 (16:53 +0000)] 
This is a hack to maintain old behavior of chan_iax2.  This ensures that if
the peers and users are being stored in a linked list, that they go in the
list in the same order that the older code used.  This is necessary to maintain
the behavior of which peers and users get matched when traversing the container.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80497 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoRevert res_agi fix that didn't quite work until we get it right ...
Russell Bryant [Thu, 23 Aug 2007 15:49:28 +0000 (15:49 +0000)] 
Revert res_agi fix that didn't quite work until we get it right ...

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80469 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAdd some more documentation on iterating ao2 containers. The documentation
Russell Bryant [Wed, 22 Aug 2007 22:54:03 +0000 (22:54 +0000)] 
Add some more documentation on iterating ao2 containers.  The documentation
implies that is possible to miss an object or see an object twice while
iterating.  After looking through the code and talking with mmichelson, I have
documented the exact conditions under which this can happen (which are rare and
harmless in most cases).

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80426 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoWhen converting this code to use the list macros, I changed it so objects are
Russell Bryant [Wed, 22 Aug 2007 22:40:27 +0000 (22:40 +0000)] 
When converting this code to use the list macros, I changed it so objects are
added to the head of a bucket instead of the tail.  However, while looking over
code with mmichelson, we noticed that the algorithm used in ao2_iterator_next
requires that items are added to the tail.  This wouldn't have caused any huge
problem, but it wasn't correct.  It meant that if an object was added to a
container while you were iterating it, and it was added to the same bucket that
the current element is in, then the new object would be returned by
ao2_iterator_next, and any other objects in the bucket would be bypassed in
the traversal.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80424 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't crash when using realtime in chan_sip without an insecure setting in the database.
Russell Bryant [Wed, 22 Aug 2007 21:00:44 +0000 (21:00 +0000)] 
Don't crash when using realtime in chan_sip without an insecure setting in the database.
(closes issue #10348, reported by link55, fixed by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80390 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoMerge changes from team/russell/iax_refcount.
Russell Bryant [Wed, 22 Aug 2007 20:21:36 +0000 (20:21 +0000)] 
Merge changes from team/russell/iax_refcount.

This set of changes fixes problems with the handling of iax2_user and iax2_peer
objects.  It was very possible for a thread to still hold a reference to one of
these objects while a reload operation tries to delete them.  The fix here is to
ensure that all references to these objects are tracked so that they can't go away
while still in use.

To accomplish this, I used the astobj2 reference counted object model.  This
code has been in one of Luigi Rizzo's branches for a long time and was primarily
developed by one of his students, Marta Carbone.  I wanted to go ahead and bring
this in to 1.4 because there are other problems similar to the ones fixed by these
changes, so we might as well go ahead and use the new astobj if we're going to go
through all of the work necessary to fix the problems.

As a nice side benefit of these changes, peer and user handling got more efficient.
Using astobj2 lets us not hold the container lock for peers or users nearly as long
while iterating.  Also, by changing a define at the top of chan_iax2.c, the objects
will be distributed in a hash table, drastically increasing lookup speed in these
containers, which will have a very big impact on systems that have a large number of
users or peers.

The use of the hash table will be made the default in trunk.  It is not the default
in 1.4 because it changes the behavior slightly.  Previously, since peers and users
were stored in memory in the same order they were specified in the configuration file,
you could influence peer and user matching order based on the order they are specified
in the configuration.  The hash table does not guarantee any order in the container,
so this behavior will be going away.  It just means that you have to be a little
more careful ensuring that peers and users are matched explicitly and not forcing
chan_iax2 to have to guess which user is the right one based on secret, host, and
access list settings, instead of simply using the username.

If you have any questions, feel free to ask on the asterisk-dev list.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80362 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoJuggie in #asterisk-dev was reporting problems where fgets would return
Russell Bryant [Wed, 22 Aug 2007 19:53:30 +0000 (19:53 +0000)] 
Juggie in #asterisk-dev was reporting problems where fgets would return
without reading  the whole line when using fastagi.  When this happens,
errno was set to EINTR or EAGAIN.  This patch accounts for the possibility
and lets fgets continue in that case.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80360 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix a few build issues in Solaris (and likely others).
Jason Parker [Wed, 22 Aug 2007 18:53:18 +0000 (18:53 +0000)] 
Fix a few build issues in Solaris (and likely others).

Use GREP and ID variables from autoconf.

Reported to me in #asterisk-dev
I forgot who reported this - sorry. :(

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80330 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoChange a syntax that the GNU make in Solaris dislikes.
Jason Parker [Wed, 22 Aug 2007 18:25:34 +0000 (18:25 +0000)] 
Change a syntax that the GNU make in Solaris dislikes.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80304 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix a bashism (we explicitly request /bin/sh).
Jason Parker [Wed, 22 Aug 2007 18:06:00 +0000 (18:06 +0000)] 
Fix a bashism (we explicitly request /bin/sh).
Remove some oddly placed quotes I found in passing.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80302 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoHonor the contents of the COPTS variable as custom target CFLAGS. Apparently
Russell Bryant [Wed, 22 Aug 2007 16:21:58 +0000 (16:21 +0000)] 
Honor the contents of the COPTS variable as custom target CFLAGS.  Apparently
this is what openwrt does.
(reported by Brian Capouch on the asterisk-dev list, patch by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80257 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10526)
Joshua Colp [Wed, 22 Aug 2007 16:14:38 +0000 (16:14 +0000)] 
(closes issue #10526)
Reported by: sinistermidget
Revert commit from issue #10355 and return timestamp skew to 640.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80255 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't record SIP dialog history if it's not turned on. Also, put an upper
Russell Bryant [Tue, 21 Aug 2007 18:42:15 +0000 (18:42 +0000)] 
Don't record SIP dialog history if it's not turned on.  Also, put an upper
limit on how many history entires will be stored for each SIP dialog.  It is
currently set to 50, but can be increased if deemed necessary.
(closes issue #10421, closes issue #10418, patches suggested by jmoldenhauer,
 patches updated by me)
(Security implications documented in AST-2007-020)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80183 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agough. removing the diffs from ulaw.h and alaw.h for now; accidentally added them in...
Steve Murphy [Tue, 21 Aug 2007 16:39:09 +0000 (16:39 +0000)] 
ugh. removing the diffs from ulaw.h and alaw.h for now; accidentally added them in 80166

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80167 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThis patch solves problem 1 in 8126; it should not slow down the alaw codec, but...
Steve Murphy [Tue, 21 Aug 2007 16:36:34 +0000 (16:36 +0000)] 
This patch solves problem 1 in 8126; it should not slow down the alaw codec, but should prevent signal degradation via multiple trips thru the codec. Fossil estimates the twice thru this codec will prevent fax from working. 4-6 times thru would result hearable, noticeable, voice degradation.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80166 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't try to dereference the owner channel when it may not exist
Russell Bryant [Tue, 21 Aug 2007 15:22:22 +0000 (15:22 +0000)] 
Don't try to dereference the owner channel when it may not exist
(issue #10507, maxper)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80132 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(issue #10510)
Jason Parker [Tue, 21 Aug 2007 15:03:45 +0000 (15:03 +0000)] 
(issue #10510)
Reported by: casper
Patches:
      cdr.conf.diff uploaded by casper (license 55)

Fix a few errors in sample cdr config file.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80130 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix the build of app_queue
Russell Bryant [Mon, 20 Aug 2007 21:57:08 +0000 (21:57 +0000)] 
Fix the build of app_queue

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80088 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAfter a discussion on #asterisk-dev, it was decided that this should be in 1.4 as...
Mark Michelson [Mon, 20 Aug 2007 21:39:17 +0000 (21:39 +0000)] 
After a discussion on #asterisk-dev, it was decided that this should be in 1.4 as well.

(issue #10424, reported and patched by irroot)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80086 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFound a pointless ternary if. member->dynamic was set to 1 and has no opportunity...
Mark Michelson [Mon, 20 Aug 2007 16:17:43 +0000 (16:17 +0000)] 
Found a pointless ternary if. member->dynamic was set to 1 and has no opportunity to change
between then and this line, so "dynamic" will ALWAYS be output.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80049 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(issue #10499)
Jason Parker [Mon, 20 Aug 2007 16:08:49 +0000 (16:08 +0000)] 
(issue #10499)
Reported by: casper
Patches:
      extensions.conf.sample.diff uploaded by casper (license 55)

Update CLI examples in extensions.conf.sample to reflect command changes.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80047 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoUkrainian language voicemail support.
Mark Michelson [Mon, 20 Aug 2007 15:34:43 +0000 (15:34 +0000)] 
Ukrainian language voicemail support.

(closes issue #10458, reported and patched by Oleh)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80044 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoMissing curly braces. Oops. (Reported by snuffy via IRC)
Tilghman Lesher [Mon, 20 Aug 2007 02:42:49 +0000 (02:42 +0000)] 
Missing curly braces.  Oops.  (Reported by snuffy via IRC)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79998 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't allocate vmu for messagecount when we could just use the stack instead (closes...
Tilghman Lesher [Sat, 18 Aug 2007 14:30:44 +0000 (14:30 +0000)] 
Don't allocate vmu for messagecount when we could just use the stack instead (closes issue #10490)
Also, remove a useless (and leaky) SQLAllocHandle (closes issue #10480)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79947 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAvoid a crash in the handling of DTMF based Caller ID. It is valid for
Russell Bryant [Fri, 17 Aug 2007 21:01:43 +0000 (21:01 +0000)] 
Avoid a crash in the handling of DTMF based Caller ID.  It is valid for
ast_read to return NULL in the case that the channel has been hung up.
(crash reported by anonymouz666 on IRC in #asterisk-dev)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79912 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoPatch allows for more seamless transition from file storage voicemail to ODBC storage...
Mark Michelson [Fri, 17 Aug 2007 19:14:05 +0000 (19:14 +0000)] 
Patch allows for more seamless transition from file storage voicemail to ODBC storage voicemail.
If a retrieval of a greeting from the database fails, but the file is found on the file system, then
we go ahead an insert the greeting into the database. The result of this is that people who
switch from file storage to ODBC storage do not need to rerecord their voicemail greetings.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79906 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't send a semicolon over the wire in sip notify messages.
Jason Parker [Fri, 17 Aug 2007 19:12:19 +0000 (19:12 +0000)] 
Don't send a semicolon over the wire in sip notify messages.
Caused by fix for issue 9938.

I basically took the code that existed before 9938 was fixed, and
 copied it into a new function - ast_unescape_semicolon

There should be very few places this will be needed (pbx_config
 does NOT need this (see issue 9938 for details))

Issue 10430, patch by me, with help/ideas from murf (thanks murf).

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79904 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoRe-add the setting of callerid name and number.
Jason Parker [Fri, 17 Aug 2007 17:44:22 +0000 (17:44 +0000)] 
Re-add the setting of callerid name and number.

Issue 10485, reported by and fix explained by paradise.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79902 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix some crashes in chan_sip. This patch changes various places that add items
Russell Bryant [Fri, 17 Aug 2007 13:37:08 +0000 (13:37 +0000)] 
Fix some crashes in chan_sip.  This patch changes various places that add items
to the scheduler to ensure that they don't overwrite the ID of a previously
scheduled item.  If there is one, it should be removed.
(closes issue #10391, closes issue #10256, probably others, patch by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79857 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agosometimes we don't need to signal dtmf tones to asterisk, we just want them to go...
Christian Richter [Fri, 17 Aug 2007 08:22:36 +0000 (08:22 +0000)] 
sometimes we don't need to signal dtmf tones to asterisk, we just want them to go through as inband. Otherwise they might be generated by the other channel partner and then there is a double tone.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79833 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix a little race condition that could cause a crash if two channels had MOH
Russell Bryant [Thu, 16 Aug 2007 22:32:33 +0000 (22:32 +0000)] 
Fix a little race condition that could cause a crash if two channels had MOH
stopped at the same time that were using a class that had been marked for
deletion when its use count hits zero.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79792 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThis patch fixes a bug where reloading the module with "module reload" did not
Russell Bryant [Thu, 16 Aug 2007 22:24:25 +0000 (22:24 +0000)] 
This patch fixes a bug where reloading the module with "module reload" did not
delete classes from memory that were no longer in the config.  This patch fixes
that problem as well as another one.  Previously, if you reloaded MOH using the
"moh reload" CLI command, which behaved differently than "module reload ...",
MOH had to be stopped on every channel and started again immediately.  However,
there was no way to tell what class was being used, so they would all fall back
to the default class.

(closes issue #10139)
Reported by: blitzrage
Patches:
      asterisk-10139-advanced.diff.txt uploaded by jamesgolovich (license 176)
Tested by: jamesgolovich

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79778 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix more deadlocks in chan_iax2 that were introduced by making frame handling
Russell Bryant [Thu, 16 Aug 2007 21:29:24 +0000 (21:29 +0000)] 
Fix more deadlocks in chan_iax2 that were introduced by making frame handling
and scheduling multi-threaded.  Unfortunately, we have to do some expensive
deadlock avoidance when queueing frames on to the ast_channel owner of the IAX2
pvt struct.  This was already handled for regular frames, but ast_queue_hangup
and ast_queue_control were still used directly.  Making these changes introduced
even more places where the IAX2 pvt struct can disappear in the context of a
function holding its lock due to calling a function that has to unlock/lock it
to avoid deadlocks.  I went through and fixed all of these places to account for
this possibility.
(issue #10362, patch by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79756 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFixes a problem where agents would get stuck busy due to their wrapuptime being longe...
Mark Michelson [Thu, 16 Aug 2007 21:16:40 +0000 (21:16 +0000)] 
Fixes a problem where agents would get stuck busy due to their wrapuptime being longer than the queue's wrapuptime and
ringinuse=no for the queue.

(closes issue #10215, reported by Doug, repaired by me)

Special thanks to fkasumovic for pointing out the source of the problem and to bweschke for helping to come up with a solution!

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79748 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agobase_encode is not trying to open a log file, so we should not call it a log file...
Mark Michelson [Thu, 16 Aug 2007 15:58:34 +0000 (15:58 +0000)] 
base_encode is not trying to open a log file, so we should not call it a log file in the warning.

(related to issue #10452, reported by bcnit)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79690 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoA fix for two critical problems detected while working with Daniel
Philippe Sultan [Thu, 16 Aug 2007 09:37:10 +0000 (09:37 +0000)] 
A fix for two critical problems detected while working with Daniel
McKeehan in issue #10184.

Upon priority change, the resource list is not NULL terminated when
moving an item to the end of the list. This makes Asterisk endlessy
loop whenever it needs to read the list. Jids with different resource and
priority values, like in Gmail's and GoogleTalk's jabber clients put
that problem in evidence.

Upon reception of a 'from' attribute with an empty resource string,
Asterisk crashes when trying to access the found->cap pointer if the
resource list for the given buddy is not empty. This situation is
perfectly valid and must be handled. The Gizmoproject's jabber client
put that problem in evidence.

Also added a few comments in the code as well as a handle for the
capabilities from Gmail's jabber client, which are stored in a caps:c tag
rather than the usual c tag.

Closes issue #10184.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79665 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago0x80 + protocol is wrong for USERUSER when we want to send IA5 Chars.
Christian Richter [Thu, 16 Aug 2007 08:21:21 +0000 (08:21 +0000)] 
0x80 + protocol is wrong for USERUSER when we want to send IA5 Chars.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79642 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10440)
Joshua Colp [Wed, 15 Aug 2007 14:40:23 +0000 (14:40 +0000)] 
(closes issue #10440)
Reported by: irroot
(closes issue #10454)
Reported by: flo_turc
Increase maximum timestamp skew to 120. 20 was apparently far too low.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79553 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFixed an error in the Russian language voicemail intro.
Mark Michelson [Wed, 15 Aug 2007 14:26:40 +0000 (14:26 +0000)] 
Fixed an error in the Russian language voicemail intro.

(issue #10458, reported and patched by Oleh)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79527 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10456)
Joshua Colp [Wed, 15 Aug 2007 14:18:44 +0000 (14:18 +0000)] 
(closes issue #10456)
Reported by: irroot
Patches:
      sip_timeout.patch uploaded by irroot (license 52)
Change hardcoded timer value to defined value. I'm doing this in 1.4 as well so if it needs to be changed in the future this place would not have been forgotten.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79523 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix another spot where an iax2_peer would be leaked if realtime was in use.
Russell Bryant [Tue, 14 Aug 2007 18:49:10 +0000 (18:49 +0000)] 
Fix another spot where an iax2_peer would be leaked if realtime was in use.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79470 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix some memory leaks throughout chan_iax2 related to the use of realtime.
Russell Bryant [Tue, 14 Aug 2007 17:31:39 +0000 (17:31 +0000)] 
Fix some memory leaks throughout chan_iax2 related to the use of realtime.
I found these while working on iax2_peer object reference tracking.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79436 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10415)
Joshua Colp [Tue, 14 Aug 2007 15:27:13 +0000 (15:27 +0000)] 
(closes issue #10415)
Reported by: atis
Revert fix for #10327 as it causes more issues then it solves.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79397 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agomemset really, really needs to be used here.
Steve Murphy [Mon, 13 Aug 2007 22:40:06 +0000 (22:40 +0000)] 
memset really, really needs to be used here.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79363 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoInstead of accepting a single DTMF character accept a full string.
Joshua Colp [Mon, 13 Aug 2007 21:57:20 +0000 (21:57 +0000)] 
Instead of accepting a single DTMF character accept a full string.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79334 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't call find_peer in registry_authrequest with the pvt lock held to avoid a
Russell Bryant [Mon, 13 Aug 2007 20:37:50 +0000 (20:37 +0000)] 
Don't call find_peer in registry_authrequest with the pvt lock held to avoid a
deadlock.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79301 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoRelease the pvt lock before calling find_peer in register_verify to avoid a
Russell Bryant [Mon, 13 Aug 2007 20:18:30 +0000 (20:18 +0000)] 
Release the pvt lock before calling find_peer in register_verify to avoid a
deadlock.  Also, remove some unnecessary locking in auth_fail that was only done
recursively.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79276 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't call find_peer within update_registry with a pvt lock held. This can
Russell Bryant [Mon, 13 Aug 2007 20:02:57 +0000 (20:02 +0000)] 
Don't call find_peer within update_registry with a pvt lock held.  This can
cause a deadlock as the code will eventually call find_callno.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79274 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoI am fighting deadlocks in chan_iax2. I have tracked them down to a single
Russell Bryant [Mon, 13 Aug 2007 19:27:39 +0000 (19:27 +0000)] 
I am fighting deadlocks in chan_iax2.  I have tracked them down to a single
core issue.  You can not call find_callno() while holding a pvt lock as this
function has to lock another (every) other pvt lock.  Doing so can lead to a
classic deadlock.  So, I am tracking down all of the code paths where this
can happen and fixing them.

The fix I committed earlier today was along the same theme.  This patch fixes
some code down the path of authenticate_reply.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79272 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThis patch fixes bug 10411. I added a new regression test, some regression test cleanups
Steve Murphy [Mon, 13 Aug 2007 17:49:54 +0000 (17:49 +0000)] 
This patch fixes bug 10411. I added a new regression test, some regression test cleanups

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79255 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix a potential deadlock in socket_process. check_provisioning can eventually
Russell Bryant [Mon, 13 Aug 2007 15:28:13 +0000 (15:28 +0000)] 
Fix a potential deadlock in socket_process.  check_provisioning can eventually
call find_callno.  You can't hold a pvt lock while calling find_callno because
it goes through and locks every single one looking for a match.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79214 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAdd an API call to allow the engine to know that DTMF was received.
Joshua Colp [Mon, 13 Aug 2007 14:51:09 +0000 (14:51 +0000)] 
Add an API call to allow the engine to know that DTMF was received.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79207 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10437)
Joshua Colp [Mon, 13 Aug 2007 14:18:04 +0000 (14:18 +0000)] 
(closes issue #10437)
Reported by: haklin
Don't set the callerid name and number a second time on a newly created channel. ast_channel_alloc itself already sets it and setting it twice would cause a memory leak.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79174 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoEnsure the connection gets marked as used at allocation time (closes issue #10429...
Tilghman Lesher [Sat, 11 Aug 2007 05:23:04 +0000 (05:23 +0000)] 
Ensure the connection gets marked as used at allocation time (closes issue #10429, report and fix by mnicholson)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79142 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFrom a user complaint on #asterisk, I have forced pbx_spool to explain what reason...
Steve Murphy [Fri, 10 Aug 2007 20:53:43 +0000 (20:53 +0000)] 
From a user complaint on #asterisk, I have forced pbx_spool to explain what reason codes mean, when they are logged

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79099 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoRe bug behavior mentioned in #asterisk, made this tweak to code, to prevent hundreds...
Steve Murphy [Fri, 10 Aug 2007 18:25:51 +0000 (18:25 +0000)] 
Re bug behavior mentioned in #asterisk, made this tweak to code, to prevent hundreds of log messages from being generated

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79049 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThis will help debug; from a question asked on #asterisk
Steve Murphy [Fri, 10 Aug 2007 17:43:49 +0000 (17:43 +0000)] 
This will help debug; from a question asked on #asterisk

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79044 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThe last set of changes that I made to "core show locks" made it not able to
Russell Bryant [Fri, 10 Aug 2007 15:20:09 +0000 (15:20 +0000)] 
The last set of changes that I made to "core show locks" made it not able to
track mutexes unless they were declared using AST_MUTEX_DEFINE_STATIC.  Locks
initialized with ast_mutex_init() were not tracked.  It should work now.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78995 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't bother having the core pass through or emulate begin DTMF frames when in an...
Joshua Colp [Fri, 10 Aug 2007 14:15:53 +0000 (14:15 +0000)] 
Don't bother having the core pass through or emulate begin DTMF frames when in an ast_waitstream. It only cares about the end of DTMF.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78955 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10422)
Joshua Colp [Fri, 10 Aug 2007 13:49:19 +0000 (13:49 +0000)] 
(closes issue #10422)
Reported by: bhowell
Add note to sample configuration about module load order and how it can cause perfectly good queue members to be marked as invalid.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78951 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agofixed a bug with the useruser information element. We send them now also in the disco...
Christian Richter [Fri, 10 Aug 2007 13:24:03 +0000 (13:24 +0000)] 
fixed a bug with the useruser information element. We send them now also in the disconnect message.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78936 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoImproved a bit of logic regarding comma-separated mailboxes in has_voicemail. Also...
Mark Michelson [Thu, 9 Aug 2007 23:47:00 +0000 (23:47 +0000)] 
Improved a bit of logic regarding comma-separated mailboxes in has_voicemail. Also added some braces to some compound if statements
since unbraced if statements scare me in general.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78907 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThis fixes bug 10416; thanks to mvanbaak for the pretty output
Steve Murphy [Thu, 9 Aug 2007 23:10:46 +0000 (23:10 +0000)] 
This fixes bug 10416; thanks to mvanbaak for the pretty output

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78891 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoRemoving some extra debug code I left in my last commit
Mark Michelson [Thu, 9 Aug 2007 22:03:48 +0000 (22:03 +0000)] 
Removing some extra debug code I left in my last commit

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78860 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoQuite a few changes regarding IMAP storage.
Mark Michelson [Thu, 9 Aug 2007 21:51:17 +0000 (21:51 +0000)] 
Quite a few changes regarding IMAP storage.

1. instead of using inboxcount as the core message counting function, we use messagecount instead. This makes it possible to count messages in folders besides just INBOX and Old.
2. inboxcount and hasvoicemail now use messagecount as their means of determining return values.
3. Added a copy_message function for IMAP storage. Unfortunately I don't have the means to test it, but it seems like a pretty straightforward function.
4. Removed a #ifndef IMAP_STORAGE and matching #endif from leave_voicemail for a couple of reasons. One, we want to support copying mail to multiple IMAP boxes, and two, IMAP was
   broken because a STORE macro had been moved into this section of code.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78859 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoI broke canreinvite...Now I'm fixing it. I put some new code in the wrong place and...
Mark Michelson [Thu, 9 Aug 2007 19:52:43 +0000 (19:52 +0000)] 
I broke canreinvite...Now I'm fixing it. I put some new code in the wrong place and so I've reverted the canreinvite section to how it was and put my new code where it should be.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78826 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoadd a comment to indicate that inboxcount for ODBC_STORAGE needs to be fixed to suppo...
Russell Bryant [Thu, 9 Aug 2007 17:58:31 +0000 (17:58 +0000)] 
add a comment to indicate that inboxcount for ODBC_STORAGE needs to be fixed to support multiple mailboxes

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78778 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix subscriptions to multiple mailboxes for ODBC_STORAGE. Also, leave a
Russell Bryant [Thu, 9 Aug 2007 17:24:40 +0000 (17:24 +0000)] 
Fix subscriptions to multiple mailboxes for ODBC_STORAGE.  Also, leave a
comment for this to be fixed for IMAP_STORAGE, as well.  I left IMAP alone
since I know MarkM was working on this code right now for another reason.

This is broken even worse in trunk, but for a different reason.  The fact
that the mailbox option supported multiple mailboxes is completely not obvious
from the code in the channel drivers.  Anyway, I will fix that in another
commit ...

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78749 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix a problem with the combination of the 'F' option to pass DTMF through a
Russell Bryant [Thu, 9 Aug 2007 16:12:57 +0000 (16:12 +0000)] 
Fix a problem with the combination of the 'F' option to pass DTMF through a
conference and options that use DTMF to activate various features.  The problem
was that the BEGIN frame would be passed through, but the END frame would get
intercepted to activate a feature.  Then, the other conference members would hear
DTMF for forever, which they didn't seem to like very much.
(closes issue #10400, reported by stevefeinstein, fixed by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78717 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix mogs email address.
Jason Parker [Wed, 8 Aug 2007 19:29:42 +0000 (19:29 +0000)] 
Fix mogs email address.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78646 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFixed some compiler warnings so that compiling with dev-mode and IMAP storage would...
Mark Michelson [Wed, 8 Aug 2007 18:16:49 +0000 (18:16 +0000)] 
Fixed some compiler warnings so that compiling with dev-mode and IMAP storage would not have any errors.
This section of code may get changed again shortly since my change uncovers a rather silly bit of logic.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78620 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoChanging a bit of logic so that someone will NEVER exit the queue on timeout unless...
Mark Michelson [Wed, 8 Aug 2007 14:26:36 +0000 (14:26 +0000)] 
Changing a bit of logic so that someone will NEVER exit the queue on timeout unless they have enabled the 'n' option.
This commit relates to issue #10320. Thanks to jfitzgibbon for detailing the idea behind this code change.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78575 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10335)
Joshua Colp [Wed, 8 Aug 2007 13:51:01 +0000 (13:51 +0000)] 
(closes issue #10335)
Reported by: adamgundy
Update sip.conf to include another scenario where directrtpsetup will fail.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78569 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix the build of this module on 64-bit platforms
Russell Bryant [Tue, 7 Aug 2007 20:57:54 +0000 (20:57 +0000)] 
Fix the build of this module on 64-bit platforms

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78488 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoThe logic behind inboxcount's return value was reversed in has_voicemail and message_...
Mark Michelson [Tue, 7 Aug 2007 19:43:57 +0000 (19:43 +0000)] 
The logic behind inboxcount's return value was reversed in has_voicemail and message_count.

(closes issue #10401, reported by st1710, patched by me)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78450 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoDon't free the environment handle when the connection fails, because other connection...
Tilghman Lesher [Tue, 7 Aug 2007 19:34:25 +0000 (19:34 +0000)] 
Don't free the environment handle when the connection fails, because other connections might be depending upon it

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78437 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAllow chan_sip to build in devmode
Jason Parker [Tue, 7 Aug 2007 19:11:50 +0000 (19:11 +0000)] 
Allow chan_sip to build in devmode

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78416 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoReconnection doesn't happen automatically when a DB goes down (fixes issue #9389)
Tilghman Lesher [Tue, 7 Aug 2007 19:09:38 +0000 (19:09 +0000)] 
Reconnection doesn't happen automatically when a DB goes down (fixes issue #9389)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78415 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoProperly check the capabilities count to avoid a segfault.
Jason Parker [Tue, 7 Aug 2007 18:25:15 +0000 (18:25 +0000)] 
Properly check the capabilities count to avoid a segfault.
(ASA-2007-019)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78375 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoMerged revisions 78370 via svnmerge from
Russell Bryant [Tue, 7 Aug 2007 17:45:30 +0000 (17:45 +0000)] 
Merged revisions 78370 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r78370 | russell | 2007-08-07 12:44:04 -0500 (Tue, 07 Aug 2007) | 4 lines

Revert patch committed for issue #9660.  It broke E&M trunks.
(closes issue #10360)
(closes issue #10364)

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78371 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAdd additional DTMF log messages to help when debugging issues.
Joshua Colp [Mon, 6 Aug 2007 21:41:13 +0000 (21:41 +0000)] 
Add additional DTMF log messages to help when debugging issues.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78275 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix an issue where dynamic threads can get free'd, but still exist in the
Russell Bryant [Mon, 6 Aug 2007 20:44:09 +0000 (20:44 +0000)] 
Fix an issue where dynamic threads can get free'd, but still exist in the
dynamic thread list.
(closes issue #10392, patch from Mihai, with credit to his colleague, Pete)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78242 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix the return value of AST_LIST_REMOVE(). This shouldn't be causing any
Russell Bryant [Mon, 6 Aug 2007 16:50:54 +0000 (16:50 +0000)] 
Fix the return value of AST_LIST_REMOVE().  This shouldn't be causing any
problems, though, because the only code that uses the return value only checks
to see if it is NULL.
(closes issue #10390, pointed out by mihai)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78184 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoIt is possible for a transfer to occur before the remote device has our tag in which...
Joshua Colp [Mon, 6 Aug 2007 16:32:44 +0000 (16:32 +0000)] 
It is possible for a transfer to occur before the remote device has our tag in which case they send none in the transfer. In this case we need to not fail the transfer dialog lookup.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78182 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix an issue with using UpdateConfig (manager action) where escaped semicolons
Jason Parker [Mon, 6 Aug 2007 16:30:51 +0000 (16:30 +0000)] 
Fix an issue with using UpdateConfig (manager action) where escaped semicolons
 in a config would be converted to just semicolons (\; to ;)

Issue 9938

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78180 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10355)
Joshua Colp [Mon, 6 Aug 2007 15:27:24 +0000 (15:27 +0000)] 
(closes issue #10355)
Reported by: wdecarne
Now that we pass through RTP timestamp information we need to make the allowed timestamp skew considerably less. There are situations where a source may change and due to the timestamp difference the receiver will experience an audio gap since we did not indicate by setting the marker bit that the source changed.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78172 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10383)
Joshua Colp [Mon, 6 Aug 2007 14:18:20 +0000 (14:18 +0000)] 
(closes issue #10383)
Reported by: rizzo
Include stdlib.h so NULL gets defined for gethostbyname_r checks.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78166 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFixed a mistake I made in realtime_peer which caused it to return NULL every time.
Mark Michelson [Mon, 6 Aug 2007 13:33:07 +0000 (13:33 +0000)] 
Fixed a mistake I made in realtime_peer which caused it to return NULL every time.
Thanks to Jon Fealy for emailing me the correction.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78164 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoPortability fix for devmode compiling (closes bug #10382)
Tilghman Lesher [Sun, 5 Aug 2007 14:18:00 +0000 (14:18 +0000)] 
Portability fix for devmode compiling (closes bug #10382)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78146 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoFix compilation failure when MALLOC_DEBUG is enabled, but DEBUG_THREADS is not
Russell Bryant [Sun, 5 Aug 2007 04:15:31 +0000 (04:15 +0000)] 
Fix compilation failure when MALLOC_DEBUG is enabled, but DEBUG_THREADS is not

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78143 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoIf peer is not found, the error message is misleading (should be peer not found,...
Tilghman Lesher [Sun, 5 Aug 2007 03:29:01 +0000 (03:29 +0000)] 
If peer is not found, the error message is misleading (should be peer not found, not ACL failure)

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78139 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoChanged the behavior of sip's realtime_peer function to match the corresponding way...
Mark Michelson [Fri, 3 Aug 2007 20:25:22 +0000 (20:25 +0000)] 
Changed the behavior of sip's realtime_peer function to match the corresponding way of matching for non-realtime peers.
Now matches are made on both the IP address and port number, or if the insecure setting is set to "port" then just match on the
IP address.

In order to accomplish this, I also added a new API call, ast_category_root, which returns the first variable of an ast_category struct

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78103 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years ago(closes issue #10194)
Russell Bryant [Fri, 3 Aug 2007 20:14:06 +0000 (20:14 +0000)] 
(closes issue #10194)
Reported by: blitzrage
Patches:
      bug0010194 uploaded by vovochka
Tested by: blitzrage

Fix a problem when you call Voicemail() with multiple mailboxes specified and
ODBC_STORAGE is in use.  The audio part of the message was only given to the
first mailbox specified.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78101 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoAdd some improvements to lock debugging. These changes take effect
Russell Bryant [Fri, 3 Aug 2007 19:39:49 +0000 (19:39 +0000)] 
Add some improvements to lock debugging.  These changes take effect
with DEBUG_THREADS enabled and provide the following:

 * This will keep track of which locks are held by which thread as well as
   which lock a thread is waiting for in a thread-local data structure.  A
   reference to this structure is available on the stack in the dummy_start()
   function, which is the common entry point for all threads.  This information
   can be easily retrieved using gdb if you switch to the dummy_start() stack
   frame of any thread and print the contents of the lock_info variable.

 * All of the thread-local structures for keeping track of this lock information
   are also stored in a list so that the information can be dumped to the CLI
   using the "core show locks" CLI command.  This introduces a little bit of a
   performance hit as it requires additional underlying locking operations
   inside of every lock/unlock on an ast_mutex.  However, the benefits of
   having this information available at the CLI is huge, especially considering
   this is only done in DEBUG_THREADS mode.  It means that in most cases where
   we debug deadlocks, we no longer have to request access to the machine to
   analyze the contents of ast_mutex_t structures.  We can now just ask them
   to get the output of "core show locks", which gives us all of the information
   we needed in most cases.

I also had to make some additional changes to astmm.c to make this work when
both MALLOC_DEBUG and DEBUG_THREADS are enabled.  I disabled tracking of one
of the locks in astmm.c because it gets used inside the replacement memory
allocation routines, and the lock tracking code allocates memory.  This caused
infinite recursion.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78095 65c4cc65-6c06-0410-ace0-fbb531ad65f3

18 years agoOnly pass through HOLD and UNHOLD control frames when the mohinterpret option
Russell Bryant [Fri, 3 Aug 2007 17:01:07 +0000 (17:01 +0000)] 
Only pass through HOLD and UNHOLD control frames when the mohinterpret option
is set to "passthrough".  This was pointed out by Kevin in the middle of a
training session.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78063 65c4cc65-6c06-0410-ace0-fbb531ad65f3