[asterisk-commits] bebuild: tag 1.8.22.0 r388961 - /tags/1.8.22.0/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri May 17 11:50:19 CDT 2013
Author: bebuild
Date: Fri May 17 11:50:15 2013
New Revision: 388961
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=388961
Log:
Update .version, ChangeLog; remove summaries
Removed:
tags/1.8.22.0/asterisk-1.8.22.0-rc2-summary.html
tags/1.8.22.0/asterisk-1.8.22.0-rc2-summary.txt
Modified:
tags/1.8.22.0/.version
tags/1.8.22.0/ChangeLog
Modified: tags/1.8.22.0/.version
URL: http://svnview.digium.com/svn/asterisk/tags/1.8.22.0/.version?view=diff&rev=388961&r1=388960&r2=388961
==============================================================================
--- tags/1.8.22.0/.version (original)
+++ tags/1.8.22.0/.version Fri May 17 11:50:15 2013
@@ -1,1 +1,1 @@
-1.8.22.0-rc2
+1.8.22.0
Modified: tags/1.8.22.0/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/1.8.22.0/ChangeLog?view=diff&rev=388961&r1=388960&r2=388961
==============================================================================
--- tags/1.8.22.0/ChangeLog (original)
+++ tags/1.8.22.0/ChangeLog Fri May 17 11:50:15 2013
@@ -1,3 +1,79 @@
+2013-05-17 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.22.0 Released.
+
+2013-05-13 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.22.0-rc2 Released.
+
+ * Distributed Device State broken at sites using res_xmpp or res_jabber
+ where Secuity Advisory AST-2012-015 is inplace
+
+ res_jabber/res_xmpp were not adding AST_EVENT_IE_CACHABLE to the
+ event as each message came in, then devstate_change_collector_cb()
+ was unable to find AST_EVENT_IE_CACHABLE in the event, so defaulted
+ incorrectly to AST_DEVSTATE_NOT_CACHABLE.
+
+ * Fix CDR not being created during an externally initiated blind
+ transfer
+
+ Way back when in the dark days of Asterisk 1.8.9, blind transferring
+ a call in a context that included the 'h' extension would
+ inadvertently execute the hangup code logic on the transferred
+ channel. This was a "bad thing". The fix was to properly check for
+ the softhangup flags on the channel and only execute the 'h'
+ extension logic (and, in later versions, hangup handler logic) if
+ the channel was well and truly dead (Jim).
+
+ Unfortunately, CDRs are fickle. Setting the softhangup flag when we
+ detected that the channel was leaving the bridge (but not to die)
+ caused some crucial snippet of CDR code, lying in ambush in the
+ middle of the bridging code, to not get executed. This had the
+ effect of blowing away one of the CDRs that is typically created
+ during a blind transfer.
+
+ While we live and die by the adage "don't touch CDRs in release
+ branches", this was our bad. The attached patch restores the CDR
+ behavior, and still manages to not run the 'h' extension during a
+ blind transfer (at least not when it's supposed to).
+
+ Thanks to Steve Davies for diagnosing this and providing a fix.
+
+ * Prevent res_timing_pthread from blocking callers
+
+ There were several reports of deadlock when using res_timing_pthread.
+ Backtraces indicated that one thread was blocked waiting for the
+ write to the pipe to complete and this thread held the container lock
+ for the timers. Therefore any thread that wanted to create a new
+ timer or read an existing timer would block waiting for either the
+ timer lock or the container lock and deadlock ensued.
+
+ This patch changes the way the pipe is used to eliminate this source
+ of deadlocks:
+
+ 1) The pipe is placed in non-blocking mode so that it would never
+ block even if the following changes someone fail...
+
+ 2) Instead of writing bytes into the pipe for each "tick" that's
+ fired the pipe now has two states--signaled and unsignaled. If
+ signaled, the pipe is hot and any pollers of the read side
+ filedescriptor will be woken up. If unsigned the pipe is idle.
+ This eliminates even the chance of filling up the pipe and reduces
+ the potential overhead of calling unnecessary writes.
+
+ 3) Since we're tracking the signaled / unsignaled state, we can
+ eliminate the exta poll system call for every firing because we know
+ that there is data to be read.
+
+ * Fix crash when AMI redirect action redirects two channels out of a
+ bridge.
+
+ The two party bridging loops were changing the bridge peer pointers
+ without the channel locks held. Thus when ast_channel_massquerade()
+ tested and used the pointer there is a small window of opportunity
+ for the pointers to become NULL even though the masquerade code has
+ the channels locked.
+
2013-03-28 Asterisk Development Team <asteriskteam at digium.com>
* Asterisk 1.8.22.0-rc1 Released.
More information about the asterisk-commits
mailing list