[asterisk-commits] rmudgett: branch group/issue14068 r186054 - in /team/group/issue14068: ./ app...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Apr 2 10:39:39 CDT 2009
Author: rmudgett
Date: Thu Apr 2 10:39:28 2009
New Revision: 186054
URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=186054
Log:
Merged revisions 184006,184025,184031,184040,184042,184045,184058,184099,184167,184236,184260,184263,184269,184302,184360,184408,184450,184532,184582,184645,184691,184722,184742,184777,184811,184863,184926,184968,185020,185104,185145,185216,185277,185316,185380,185418,185446,185487,185550,185620,185682,185720,185811,185863,185910 via svnmerge from
https://origsvn.digium.com/svn/asterisk/team/group/issue8824
................
r184006 | root | 2009-03-24 15:20:35 -0500 (Tue, 24 Mar 2009) | 1 line
automerge cancel
................
r184025 | mmichelson | 2009-03-24 15:42:10 -0500 (Tue, 24 Mar 2009) | 3 lines
Resolve automerge and reset conflict.
................
r184031 | rmudgett | 2009-03-24 15:56:41 -0500 (Tue, 24 Mar 2009) | 1 line
Reset automerge-email
................
r184040 | mmichelson | 2009-03-24 16:47:45 -0500 (Tue, 24 Mar 2009) | 3 lines
Address Russell's latest round of findings.
................
r184042 | mmichelson | 2009-03-24 16:55:53 -0500 (Tue, 24 Mar 2009) | 3 lines
Sync with trunk so I can post a new diff.
................
r184045 | russell | 2009-03-24 17:07:50 -0500 (Tue, 24 Mar 2009) | 2 lines
Remove unnecessary whitespace
................
r184058 | root | 2009-03-24 17:20:51 -0500 (Tue, 24 Mar 2009) | 9 lines
Merged revisions 184043 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184043 | russell | 2009-03-24 17:00:58 -0500 (Tue, 24 Mar 2009) | 2 lines
Put siren7 and siren14 in ast_best_codec() just so they're in there somewhere.
........
................
r184099 | root | 2009-03-24 18:22:17 -0500 (Tue, 24 Mar 2009) | 22 lines
Merged revisions 184079 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r184079 | mmichelson | 2009-03-24 17:40:39 -0500 (Tue, 24 Mar 2009) | 15 lines
Merged revisions 184078 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r184078 | mmichelson | 2009-03-24 17:34:45 -0500 (Tue, 24 Mar 2009) | 9 lines
Change NULL pointer check to be ast_strlen_zero.
The 'digit' variable is guaranteed to be non-NULL, so the if
statement could never evaluate true. Changing to ast_strlen_zero
makes the logic correct.
This was found while reviewing ast_channel_ao2 code review.
........
................
................
r184167 | root | 2009-03-24 21:20:39 -0500 (Tue, 24 Mar 2009) | 16 lines
Merged revisions 184147,184151 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184147 | russell | 2009-03-24 20:42:10 -0500 (Tue, 24 Mar 2009) | 5 lines
Fix build issues on Mac OSX.
(closes issue #14714)
Reported by: ygor
........
r184151 | russell | 2009-03-24 21:03:13 -0500 (Tue, 24 Mar 2009) | 2 lines
Change poll() to ast_poll().
........
................
r184236 | root | 2009-03-25 10:20:50 -0500 (Wed, 25 Mar 2009) | 30 lines
Merged revisions 184219-184220 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r184219 | russell | 2009-03-25 09:33:32 -0500 (Wed, 25 Mar 2009) | 2 lines
Include poll-compat.h
................
r184220 | eliel | 2009-03-25 09:38:19 -0500 (Wed, 25 Mar 2009) | 19 lines
Merged revisions 184188 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r184188 | eliel | 2009-03-25 10:12:54 -0400 (Wed, 25 Mar 2009) | 13 lines
Avoid destroying the CLI line when moving the cursor backward and trying to autocomplete.
When moving the cursor backward and pressing TAB to autocomplete, a NULL is put
in the line and we are loosing what we have already wrote after the actual
cursor position.
(closes issue #14373)
Reported by: eliel
Patches:
asterisk.c.patch uploaded by eliel (license 64)
Tested by: lmadsen
........
................
................
r184260 | rmudgett | 2009-03-25 11:44:59 -0500 (Wed, 25 Mar 2009) | 1 line
Remove unnecessary whitespace
................
r184263 | rmudgett | 2009-03-25 11:57:44 -0500 (Wed, 25 Mar 2009) | 1 line
Remove unnecessary whitespace and block ending comments.
................
r184269 | mmichelson | 2009-03-25 12:48:08 -0500 (Wed, 25 Mar 2009) | 3 lines
Remove an extra unneeded call to ast_channel_unlock.
................
r184302 | root | 2009-03-25 15:22:43 -0500 (Wed, 25 Mar 2009) | 12 lines
Merged revisions 184280 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184280 | file | 2009-03-25 14:22:06 -0500 (Wed, 25 Mar 2009) | 5 lines
Fix issue with a T38 reinvite being sent even if not configured to do so.
If we receive a T38 request negotiate control frame we should only attempt to do so
if the option is enabled on the dialog.
........
................
r184360 | root | 2009-03-25 17:20:58 -0500 (Wed, 25 Mar 2009) | 46 lines
Merged revisions 184339,184344 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184339 | russell | 2009-03-25 16:57:19 -0500 (Wed, 25 Mar 2009) | 35 lines
Improve performance of the ast_event cache functionality.
This code comes from svn/asterisk/team/russell/event_performance/.
Here is a summary of the changes that have been made, in order of both
invasiveness and performance impact, from smallest to largest.
1) Asterisk 1.6.1 introduces some additional logic to be able to handle
distributed device state. This functionality comes at a cost.
One relatively minor change in this patch is that the extra processing
required for distributed device state is now completely bypassed if
it's not needed.
2) One of the things that I noticed when profiling this code was that a
_lot_ of time was spent doing string comparisons. I changed the way
strings are represented in an event to include a hash value at the front.
So, before doing a string comparison, we do an integer comparison on the
hash.
3) Finally, the code that handles the event cache has been re-written.
I tried to do this in a such a way that it had minimal impact on the API.
I did have to change one API call, though - ast_event_queue_and_cache().
However, the way it works now is nicer, IMO. Each type of event that
can be cached (MWI, device state) has its own hash table and rules for
hashing and comparing objects. This by far made the biggest impact on
performance.
For additional details regarding this code and how it was tested, please see the
review request.
(closes issue #14738)
Reported by: russell
Review: http://reviewboard.digium.com/r/205/
........
r184344 | russell | 2009-03-25 17:11:35 -0500 (Wed, 25 Mar 2009) | 2 lines
Remove unneeded AST_LIST_ENTRY() and comment on the purpose of ast_event_ref.
........
................
r184408 | root | 2009-03-26 16:22:42 -0500 (Thu, 26 Mar 2009) | 21 lines
Merged revisions 184389 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r184389 | dvossel | 2009-03-26 16:09:37 -0500 (Thu, 26 Mar 2009) | 14 lines
Merged revisions 184388 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r184388 | dvossel | 2009-03-26 16:07:32 -0500 (Thu, 26 Mar 2009) | 8 lines
pri loop TestClient/TestServer fails: server SEND DTMF 8
app_test was failing when sending the last DTMF digit, 8, because of the 100ms pause issued after DTMF is sent. During this pause the other side would hang up causing the test to look like it failed. Now the other side waits a second before hanging up.
(closes issue #12442)
Reported by: tzafrir
........
................
................
r184450 | root | 2009-03-26 17:18:46 -0500 (Thu, 26 Mar 2009) | 16 lines
Merged revisions 184448 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r184448 | kpfleming | 2009-03-26 17:18:14 -0500 (Thu, 26 Mar 2009) | 9 lines
Merged revisions 184447 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r184447 | kpfleming | 2009-03-26 17:17:32 -0500 (Thu, 26 Mar 2009) | 3 lines
use new, improved 8kHz prompts
........
................
................
r184532 | root | 2009-03-26 21:20:47 -0500 (Thu, 26 Mar 2009) | 35 lines
Merged revisions 184512,184515,184531 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184512 | russell | 2009-03-26 20:35:56 -0500 (Thu, 26 Mar 2009) | 2 lines
Pass more useful information through to lock tracking when DEBUG_THREADS is on.
........
r184515 | russell | 2009-03-26 20:40:28 -0500 (Thu, 26 Mar 2009) | 2 lines
Don't act surprised if we get a -1 indication.
........
r184531 | russell | 2009-03-26 21:20:23 -0500 (Thu, 26 Mar 2009) | 20 lines
Fix some issues with rwlock corruption that caused deadlock like symptoms.
When dvossel and I were doing some load testing last week, we noticed that we
could make Asterisk trunk lock up instantly when we started generating a bunch
of calls. The backtraces of locked threads were bizarre, and many were stuck
on an _unlock_ of an rwlock.
The changes are:
1) Fix a number of places where a backtrace would be loaded into an invalid
index of the backtrace array. It's an off by one error, which ends up
writing over the rwlock itself.
2) Ensure that in the array of held locks, we NULL out an index once it is
not being used so that it's not confusing when analyzing its contents.
3) Remove a bunch of logging referring to an rwlock operating being done
with "deep reentrancy". It is normal for _many_ threads to hold a
read lock on an rwlock.
........
................
r184582 | root | 2009-03-27 08:21:18 -0500 (Fri, 27 Mar 2009) | 23 lines
Merged revisions 184566 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r184566 | file | 2009-03-27 08:15:26 -0500 (Fri, 27 Mar 2009) | 16 lines
Merged revisions 184565 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r184565 | file | 2009-03-27 10:06:45 -0300 (Fri, 27 Mar 2009) | 9 lines
Fix an issue where nat=yes would not always take effect for the RTP session on outgoing calls.
If calls were placed using an IP address or hostname the global nat setting was copied over
but was not set on the RTP session itself. This caused the RTP stack to not perform symmetric RTP
actions.
(closes issue #14546)
Reported by: acunningham
........
................
................
r184645 | root | 2009-03-27 09:20:51 -0500 (Fri, 27 Mar 2009) | 21 lines
Merged revisions 184628,184630,184639 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184628 | file | 2009-03-27 08:57:29 -0500 (Fri, 27 Mar 2009) | 6 lines
Fix a potential race condition when creating a software based mixing bridge.
It was possible for no timer to become available between creating the bridge
and starting it. We now open a timer when creating it and keep it open until the
bridge is destroyed.
........
r184630 | russell | 2009-03-27 09:00:18 -0500 (Fri, 27 Mar 2009) | 2 lines
Change g_eid to ast_eid_default.
........
r184639 | file | 2009-03-27 09:18:40 -0500 (Fri, 27 Mar 2009) | 2 lines
Psst, this doesn't actually need to cast again.
........
................
r184691 | root | 2009-03-27 11:20:36 -0500 (Fri, 27 Mar 2009) | 23 lines
Merged revisions 184673,184677 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184673 | file | 2009-03-27 10:46:46 -0500 (Fri, 27 Mar 2009) | 7 lines
Fix speech structure leak in the AGI speech recognition integration.
The AGI dialplan applications did not destroy the speech structure automatically
if it was not destroyed by the running AGI script. They will now do this.
(issue LUMENVOX-15)
........
r184677 | file | 2009-03-27 10:57:28 -0500 (Fri, 27 Mar 2009) | 7 lines
Fix a potential timer leak in bridge_softmix.
It is possible for a bridge to be created without actually being used.
In that scenario a timing file descriptor would be opened and not
closed. To fix this the timing file descriptor is now closed in the
destroy callback, not the thread function.
........
................
r184722 | root | 2009-03-27 12:20:30 -0500 (Fri, 27 Mar 2009) | 9 lines
Merged revisions 184693 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184693 | russell | 2009-03-27 11:21:10 -0500 (Fri, 27 Mar 2009) | 2 lines
Change global_app_buf to ast_str_thread_global_buf.
........
................
r184742 | root | 2009-03-27 13:21:24 -0500 (Fri, 27 Mar 2009) | 9 lines
Merged revisions 184726 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184726 | russell | 2009-03-27 13:04:43 -0500 (Fri, 27 Mar 2009) | 2 lines
Use ast_random() instead of rand() to ensure we use the best RNG available.
........
................
r184777 | root | 2009-03-27 14:21:06 -0500 (Fri, 27 Mar 2009) | 18 lines
Merged revisions 184762 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184762 | kpfleming | 2009-03-27 14:10:32 -0500 (Fri, 27 Mar 2009) | 12 lines
Improve timing interface to remember which provider provided a timer
The ability to load/unload timing interfaces is nice, but it means that when a timer is allocated, it may come from provider A, but later provider B becomes the 'preferred' provider. If this happens, all timer API calls on the timer that was provided by provider A will actually be handed to provider B, which will say WTF and return an error.
This patch changes the timer API to include a pointer to the provider of the timer handle so that future operations on the timer will be forwarded to the proper provider.
(closes issue #14697)
Reported by: moy
Review: http://reviewboard.digium.com/r/211/
........
................
r184811 | root | 2009-03-27 15:20:30 -0500 (Fri, 27 Mar 2009) | 20 lines
Merged revisions 184798,184801 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184798 | lmadsen | 2009-03-27 14:31:04 -0500 (Fri, 27 Mar 2009) | 4 lines
Update commit message guidelines in re: to punctuation.
The doxygen documentation has now been updated to state explicitly that I want
punctuation atthe end of the first sentence in a commit message. :).
........
r184801 | lmadsen | 2009-03-27 15:08:44 -0500 (Fri, 27 Mar 2009) | 7 lines
Fix a typo in app_ices.
(closes issue #14765)
Reported by: timeshell
Patches:
app_ices.svn-1.6.0.diff uploaded by timeshell (license 399)
........
................
r184863 | root | 2009-03-29 01:23:18 -0500 (Sun, 29 Mar 2009) | 30 lines
Merged revisions 184838,184843 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r184838 | russell | 2009-03-29 00:32:04 -0500 (Sun, 29 Mar 2009) | 8 lines
Simplify chan_h323 build to not require a second run of "make".
(closes issue #14715)
Reported by: jthurman
Patches:
h323-makefile-1.6.2.0-beta1.patch uploaded by jthurman (license 614)
Tested by: tzafrir, russell
................
r184843 | russell | 2009-03-29 00:52:20 -0500 (Sun, 29 Mar 2009) | 13 lines
Merged revisions 184842 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r184842 | russell | 2009-03-29 00:51:55 -0500 (Sun, 29 Mar 2009) | 5 lines
Ensure targs variable is fully initialized.
(closes issue #14758)
Reported by: tim_ringenbach
........
................
................
r184926 | root | 2009-03-30 09:20:24 -0500 (Mon, 30 Mar 2009) | 11 lines
Merged revisions 184910 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r184910 | russell | 2009-03-30 08:55:44 -0500 (Mon, 30 Mar 2009) | 4 lines
Fix build error when chan_h323 is not being built.
(reported by cai1982 in #asterisk-dev)
........
................
r184968 | root | 2009-03-30 10:21:07 -0500 (Mon, 30 Mar 2009) | 1 line
automerge cancel
................
r185020 | mmichelson | 2009-03-30 10:40:18 -0500 (Mon, 30 Mar 2009) | 3 lines
I have now resolved the conflict. Automerge, you can come out now. It's safe.
................
r185104 | root | 2009-03-30 12:20:41 -0500 (Mon, 30 Mar 2009) | 52 lines
Merged revisions 185072 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185072 | mmichelson | 2009-03-30 11:26:48 -0500 (Mon, 30 Mar 2009) | 45 lines
Merged revisions 185031 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185031 | mmichelson | 2009-03-30 11:17:35 -0500 (Mon, 30 Mar 2009) | 39 lines
Fix queue weight behavior so that calls in low-weight queues are not inappropriately blocked.
(This is copied and pasted from the review request I made for this patch)
Asterisk has some odd behavior when queue weights are used. The current logic used when
potentially calling a queue member is:
If the member we are going to call is part of another queue and _that other queue has any
callers in it_ and has a higher weight than the queue we are calling from, then don't try
to contact that member. The issue here is what I have marked with underscores. If the
higher-weighted queue has any callers in it at all, then the queue member will be unreachable
from the lower-weighted queue. This has the potential to be really really bad if using a
queue strategy, such as leastrecent or fewestcalls, with the potential to call the same
member repeatedly.
The fix proposed by garychen on issue 13220 is very simple and, as far as I can see, works
well for this situation. With this set of changes, the logic used becomes:
If the member we are going to call is part of another queue, the other queue has a higher
weight than the queue we are calling from, and the higher weight queue has at least as many
callers as available members, then do not try to contact the queue member. If the higher
weighted queue has fewer callers than available members, then there is no reason to deny
the call to this member since the other queue can afford to spare a member.
Since the fix involved writing a generic function for determining the number of available
members in the queue, I also modified the is_our_turn function to make use of the new
num_available_members function to determine if it is our turn to try calling a member. There
is one small behavior change. Before writing this patch, if you had autofill disabled, then
if you were the head caller in a queue, you would automatically be told that it was your
turn to try calling a member. This did not take into account whether there were actually any
queue members available to take the call. Now we actually make sure there is at least one
member available to take the call if autofill is disabled.
(closes issue #13220)
Reported by: garychen
Review: http://reviewboard.digium.com/r/202/
........
................
................
r185145 | root | 2009-03-30 16:21:15 -0500 (Mon, 30 Mar 2009) | 44 lines
Merged revisions 185122-185123 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185122 | rmudgett | 2009-03-30 15:41:24 -0500 (Mon, 30 Mar 2009) | 26 lines
Merged revisions 185120 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185120 | rmudgett | 2009-03-30 15:38:11 -0500 (Mon, 30 Mar 2009) | 19 lines
Make chan_misdn BRI TE side normally defer channel selection to the NT side.
Channel allocation collisions are not handled by chan_misdn very well.
This patch simply avoids the problem for BRI only.
For PRI, allocation collisions are still possible but less likely since
there are simply more channels available and each end could use a different
allocation strategy.
misdn.conf options available:
te_choose_channel - Use to force the TE side to allocate channels.
method - Specify the channel allocation strategy.
(closes issue #13488)
Reported by: Christian_Pinedo
Patches:
isdn_lib.patch.txt uploaded by crich
Tested by: crich, siepkes, festr
........
................
r185123 | rmudgett | 2009-03-30 15:42:14 -0500 (Mon, 30 Mar 2009) | 9 lines
Merged revisions 185121 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185121 | rmudgett | 2009-03-30 15:40:11 -0500 (Mon, 30 Mar 2009) | 1 line
Update the channel allocation method documentation.
........
................
................
r185216 | root | 2009-03-31 09:21:17 -0500 (Tue, 31 Mar 2009) | 22 lines
Merged revisions 185197 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185197 | file | 2009-03-31 09:07:36 -0500 (Tue, 31 Mar 2009) | 15 lines
Merged revisions 185196 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185196 | file | 2009-03-31 11:06:39 -0300 (Tue, 31 Mar 2009) | 8 lines
Fix crash when moving audiohooks between channels.
Handle the scenario where we are called to move audiohooks between channels
and the source channel does not actually have any on it.
(closes issue #14734)
Reported by: corruptor
........
................
................
r185277 | root | 2009-03-31 10:20:47 -0500 (Tue, 31 Mar 2009) | 12 lines
Merged revisions 185261 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r185261 | russell | 2009-03-31 09:53:45 -0500 (Tue, 31 Mar 2009) | 5 lines
Don't free() an astobj2 object.
(closes issue #14672)
Reported by: makoto
........
................
r185316 | root | 2009-03-31 11:21:02 -0500 (Tue, 31 Mar 2009) | 22 lines
Merged revisions 185299 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185299 | mmichelson | 2009-03-31 10:34:29 -0500 (Tue, 31 Mar 2009) | 15 lines
Blocked revisions 185298 via svnmerge
........
r185298 | mmichelson | 2009-03-31 10:34:05 -0500 (Tue, 31 Mar 2009) | 10 lines
Fix some state_interface stuff that was in trunk but not in the backport to 1.4.
Issue #14359 was fixed between the time that I posted the review of the backport
of the state interface change for 1.4. This merges the changes from that issue
back into 1.4.
(closes issue #14359)
Reported by: francesco_r
........
................
................
r185380 | root | 2009-03-31 12:21:10 -0500 (Tue, 31 Mar 2009) | 51 lines
Merged revisions 185363 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185363 | dbrooks | 2009-03-31 11:46:57 -0500 (Tue, 31 Mar 2009) | 44 lines
Merged revisions 185362 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185362 | dbrooks | 2009-03-31 11:37:12 -0500 (Tue, 31 Mar 2009) | 35 lines
Fix incorrect parsing in chan_gtalk when xmpp contains extra whitespaces
To drill into the xmpp to find the capabilities between channels, chan_gtalk
calls iks_child() and iks_next(). iks_child() and iks_next() are functions in
the iksemel xml parsing library that traverse xml nodes. The bug here is that
both iks_child() and iks_next() will return the next iks_struct node
*regardless* of type. chan_gtalk expects the next node to be of type IKS_TAG,
which in most cases, it is, but in this case (a call being made from the
Empathy IM client), there exists iks_struct nodes which are not IKS_TAG data
(they are extraneous whitespaces), and chan_gtalk doesn't handle that case,
so capabilities don't match, and a call cannot be made.
iks_first_tag() and iks_next_tag(), on the other hand, will not return the
very next iks_struct, but will check to see if the next iks_struct is of
type IKS_TAG. If it isn't, it will be skipped, and the next struct of type
IKS_TAG it finds will be returned. This assures that chan_gtalk will find
the iks_struct it is looking for.
This fix simply changes all calls to iks_child() and iks_next() to become
calls to iks_first_tag() and iks_next_tag(), which resolves the capability
matching.
The following is a payload listing from Empathy, which, due to the extraneous
whitespace, will not be parsed correctly by iksemel:
<iq from='dbrooksjab at 235-22-24-10/Telepathy' to='astjab at 235-22-24-10/asterisk' type='set' id='542757715704'> <session xmlns='http://www.google.com/session' initiator='dbrooksjab at 235-22-24-10/Telepathy' type='initiate' id='1837267342'> <description xmlns='http://www.google.com/session/phone'> <payload-type clockrate='16000' name='speex' id='96'/>
<payload-type clockrate='8000' name='PCMA' id='8'/>
<payload-type clockrate='8000' name='PCMU' id='0'/>
<payload-type clockrate='90000' name='MPA' id='97'/>
<payload-type clockrate='16000' name='SIREN' id='98'/>
<payload-type clockrate='8000' name='telephone-event' id='99'/>
</description>
</session>
</iq>
Review: http://reviewboard.digium.com/r/181/
........
................
................
r185418 | mmichelson | 2009-03-31 12:30:08 -0500 (Tue, 31 Mar 2009) | 10 lines
Fix crash that could occur on SIP attended transfers of unbridged calls.
If trying to transfer a Meetme conference or an IVR where there is no bridged
channel that is being transferred, there is no collected line information
to gather. Trying to do so means accessing NULL pointers and generally leads
to horrible suffering, anguish, and other hyperbole to describe a crash.
AST-200
................
r185446 | root | 2009-03-31 14:20:36 -0500 (Tue, 31 Mar 2009) | 47 lines
Merged revisions 185432 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r185432 | russell | 2009-03-31 14:07:58 -0500 (Tue, 31 Mar 2009) | 40 lines
Improve performance of the code handling the frame queue in chan_iax2.
In my tests that exercised full frame handling in chan_iax2, the version with
these changes took 30% to 40% of the CPU time compared to the same test of
Asterisk trunk before these modifications.
While doing some profiling for <http://reviewboard.digium.com/r/205/>,
one function that caught my eye was network_thread() in chan_iax2.c.
After the things that I was working on there, it was the next target
for analysis and optimization. I used oprofile's source annotation
functionality and found that the loop traversing the frame queue in
network_thread() was to blame for the excessive CPU cycle consumption.
The frame_queue in chan_iax2 previously held all frames that either were
pending transmission or had been transmitted and are still pending
acknowledgment.
In network_thread(), the previous code would go back through the main
for loop after reading a single incoming frame or after being signaled
because a frame had been queued up for initial transmission. In each
iteration of the loop, it traverses the entire frame queue looking for
frames that need to be transmitted. On a busy server, this could easily
be quite a few entries.
This patch is actually quite simple. The frame_queue has become only a list
of frames pending acknowledgment. Frames that need to be transmitted are
queued up to a dedicated transmit thread via the taskprocessor API.
As a result, the code in network_thread() becomes much simpler, as its only
job is to read incoming frames.
In addition to the previously described changes, this patch includes some
additional changes to the frame_queue. Instead of one big frame_queue, now
there is a list per call number to further reduce wasted list traversals.
The biggest impact of this change is in socket_process().
For additional details on testing and test results, see the review request.
Review: http://reviewboard.digium.com/r/212/
........
................
r185487 | root | 2009-03-31 15:21:30 -0500 (Tue, 31 Mar 2009) | 21 lines
Merged revisions 185469 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185469 | mmichelson | 2009-03-31 14:46:18 -0500 (Tue, 31 Mar 2009) | 14 lines
Merged revisions 185468 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185468 | mmichelson | 2009-03-31 14:45:30 -0500 (Tue, 31 Mar 2009) | 8 lines
Fix Russian voicemail intro to say the word "messages" properly.
(closes issue #14736)
Reported by: chappell
Patches:
voicemail_no_messages.diff uploaded by chappell (license 8)
........
................
................
r185550 | root | 2009-03-31 16:21:40 -0500 (Tue, 31 Mar 2009) | 15 lines
Merged revisions 185532 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185532 | mmichelson | 2009-03-31 15:56:46 -0500 (Tue, 31 Mar 2009) | 8 lines
Blocked revisions 185531 via svnmerge
........
r185531 | mmichelson | 2009-03-31 15:55:47 -0500 (Tue, 31 Mar 2009) | 3 lines
Use AST_SCHED_DEL_SPINLOCK instead of manually using the logic.
........
................
................
r185620 | root | 2009-03-31 17:21:57 -0500 (Tue, 31 Mar 2009) | 43 lines
Merged revisions 185581,185600,185604 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
................
r185581 | kpfleming | 2009-03-31 16:29:50 -0500 (Tue, 31 Mar 2009) | 19 lines
Optimizations to the stringfields API
This patch provides a number of optimizations to the stringfields API, focused around saving (not wasting) memory whenever possible. Thanks to Mark Michelson for inspiring this work and coming up with the first two optimizations that are represented here:
Changes:
- Cleanup of some code, fix incorrect doxygen comments
- When a field is emptied or replaced with a new allocation, decrease the amount of 'active' space in the pool it was held in; if that pool reaches zero active space, and is not the current pool, then free it as it is no longer in use
- When allocating a pool, try to allocate a size that will fit in a 'standard' malloc() allocation without wasting space
- When allocating space for a field, store the amount of space in the two bytes immediately preceding the field; this eliminates the need to call strlen() on the field when overwriting it, and more importantly it 'remembers' the amount of space the field has available, even if a shorter string has been stored in it since it was allocated
- Don't automatically double the size of each successive pool allocated; it's wasteful
http://reviewboard.digium.com/r/165/
................
r185600 | mmichelson | 2009-03-31 17:02:48 -0500 (Tue, 31 Mar 2009) | 12 lines
Merged revisions 185599 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r185599 | mmichelson | 2009-03-31 17:00:01 -0500 (Tue, 31 Mar 2009) | 6 lines
Fix crash that would occur if an empty member was specified in queues.conf.
(closes issue #14796)
Reported by: pida
........
................
r185604 | mmichelson | 2009-03-31 17:12:52 -0500 (Tue, 31 Mar 2009) | 3 lines
Fix trunk's compilation.
................
................
r185682 | root | 2009-03-31 18:21:09 -0500 (Tue, 31 Mar 2009) | 9 lines
Merged revisions 185664 via svnmerge from
file:///srv/subversion/repos/asterisk/trunk
........
r185664 | kpfleming | 2009-03-31 17:35:07 -0500 (Tue, 31 Mar 2009) | 1 line
ignore copied (generated) file
........
................
r185720 | root | 2009-03-31 20:21:39 -0500 (Tue, 31 Mar 2009) | 1 line
automerge cancel
................
r185811 | mmichelson | 2009-04-01 09:24:23 -0500 (Wed, 01 Apr 2009) | 3 lines
BUMP! BUMP! BUMP! BUMP! BUMP! BUMP! AUTO! M! ER! GGGGGG
................
r185863 | root | 2009-04-01 14:21:30 -0500 (Wed, 01 Apr 2009) | 1 line
automerge cancel
................
r185910 | mmichelson | 2009-04-01 14:41:49 -0500 (Wed, 01 Apr 2009) | 4 lines
Conflict: resolved.
Automerge: reset.
................
Modified:
team/group/issue14068/ (props changed)
team/group/issue14068/CHANGES
team/group/issue14068/apps/app_dial.c
team/group/issue14068/apps/app_directed_pickup.c
team/group/issue14068/apps/app_dumpchan.c
team/group/issue14068/apps/app_followme.c
team/group/issue14068/apps/app_ices.c
team/group/issue14068/apps/app_minivm.c
team/group/issue14068/apps/app_queue.c
team/group/issue14068/apps/app_senddtmf.c
team/group/issue14068/apps/app_test.c
team/group/issue14068/apps/app_voicemail.c
team/group/issue14068/bridges/bridge_softmix.c
team/group/issue14068/channels/Makefile
team/group/issue14068/channels/chan_dahdi.c
team/group/issue14068/channels/chan_gtalk.c
team/group/issue14068/channels/chan_iax2.c
team/group/issue14068/channels/chan_mgcp.c
team/group/issue14068/channels/chan_misdn.c
team/group/issue14068/channels/chan_sip.c
team/group/issue14068/channels/chan_unistim.c
team/group/issue14068/channels/h323/Makefile.in
team/group/issue14068/channels/misdn/isdn_lib.c
team/group/issue14068/channels/misdn/isdn_msg_parser.c
team/group/issue14068/channels/misdn_config.c
team/group/issue14068/configs/misdn.conf.sample
team/group/issue14068/configs/sip.conf.sample
team/group/issue14068/include/asterisk/_private.h
team/group/issue14068/include/asterisk/app.h
team/group/issue14068/include/asterisk/channel.h
team/group/issue14068/include/asterisk/compat.h
team/group/issue14068/include/asterisk/devicestate.h
team/group/issue14068/include/asterisk/doxyref.h
team/group/issue14068/include/asterisk/event.h
team/group/issue14068/include/asterisk/heap.h
team/group/issue14068/include/asterisk/lock.h
team/group/issue14068/include/asterisk/stringfields.h
team/group/issue14068/include/asterisk/strings.h
team/group/issue14068/include/asterisk/timing.h
team/group/issue14068/include/asterisk/utils.h
team/group/issue14068/main/app.c
team/group/issue14068/main/asterisk.c
team/group/issue14068/main/audiohook.c
team/group/issue14068/main/callerid.c
team/group/issue14068/main/channel.c
team/group/issue14068/main/cli.c
team/group/issue14068/main/devicestate.c
team/group/issue14068/main/event.c
team/group/issue14068/main/file.c
team/group/issue14068/main/heap.c
team/group/issue14068/main/manager.c
team/group/issue14068/main/pbx.c
team/group/issue14068/main/timing.c
team/group/issue14068/main/utils.c
team/group/issue14068/pbx/pbx_dundi.c
team/group/issue14068/res/ais/evt.c
team/group/issue14068/res/res_agi.c
team/group/issue14068/sounds/Makefile
team/group/issue14068/utils/ (props changed)
team/group/issue14068/utils/Makefile
Propchange: team/group/issue14068/
------------------------------------------------------------------------------
Binary property 'branch-1.4-blocked' - no diff available.
Propchange: team/group/issue14068/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Propchange: team/group/issue14068/
------------------------------------------------------------------------------
--- issue14068-integrated (original)
+++ issue14068-integrated Thu Apr 2 10:39:28 2009
@@ -1,1 +1,1 @@
-/team/group/issue8824:1-183987
+/team/group/issue8824:1-186053
Propchange: team/group/issue14068/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Thu Apr 2 10:39:28 2009
@@ -1,1 +1,1 @@
-/trunk:1-183920
+/trunk:1-185889
Modified: team/group/issue14068/CHANGES
URL: http://svn.digium.com/svn-view/asterisk/team/group/issue14068/CHANGES?view=diff&rev=186054&r1=186053&r2=186054
==============================================================================
--- team/group/issue14068/CHANGES (original)
+++ team/group/issue14068/CHANGES Thu Apr 2 10:39:28 2009
@@ -10,6 +10,11 @@
------------------------------------------------------------------------------
--- Functionality changes from Asterisk 1.6.2 to Asterisk 1.6.3 -------------
------------------------------------------------------------------------------
+
+SIP Changes
+-----------
+ * Added preferred_codec_only option in sip.conf. This feature limits the joint
+ codecs sent in response to an INVITE to the single most preferred codec.
Applications
------------
@@ -61,6 +66,11 @@
'rpid' and 'pai'. Setting sendrpid to 'rpid' will cause Remote-Party-ID
header to be sent (equivalent to setting sendrpid=yes) and setting
sendrpid to 'pai' will cause P-Asserted-Identity header to be sent.
+
+Asterisk Manager Interface
+--------------------------
+ * The Hangup action now accepts a Cause header which may be used to
+ set the channel's hangup cause.
------------------------------------------------------------------------------
--- Functionality changes from Asterisk 1.6.1 to Asterisk 1.6.2 -------------
Modified: team/group/issue14068/apps/app_dial.c
URL: http://svn.digium.com/svn-view/asterisk/team/group/issue14068/apps/app_dial.c?view=diff&rev=186054&r1=186053&r2=186054
==============================================================================
--- team/group/issue14068/apps/app_dial.c (original)
+++ team/group/issue14068/apps/app_dial.c Thu Apr 2 10:39:28 2009
@@ -770,7 +770,6 @@
} else {
ast_party_caller_copy(&c->cid, &in->cid);
ast_string_field_set(c, accountcode, in->accountcode);
- ast_channel_unlock(in);
}
ast_party_connected_line_copy(&c->connected, apc);
Modified: team/group/issue14068/apps/app_directed_pickup.c
[... 6050 lines stripped ...]
More information about the asterisk-commits
mailing list