Compare commits

...

13 Commits

Author SHA1 Message Date
Asterisk Autobuilder
7a296a0153 Importing release summary for 1.8.21.0 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0@384259 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-28 13:51:44 +00:00
Asterisk Autobuilder
8babb99af4 Update version, ChangeLog
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0@384257 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-28 13:49:20 +00:00
Asterisk Autobuilder
1eae3f69c5 Create 1.8.21.0
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0@384247 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-28 13:37:05 +00:00
Asterisk Autobuilder
d54395bb96 Importing release summary for 1.8.21.0-rc2 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc2@384095 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-27 18:08:19 +00:00
Asterisk Autobuilder
137fa01ae5 Update ChangeLog
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc2@384089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-27 17:56:25 +00:00
Asterisk Autobuilder
3d9f9edaa8 Update with security patches; regression fixes
r384048 merged for ASTERISK-21323
r383976 merged for ASTERISK-20967
r383981 merged for ASTERISK-21013


git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc2@384086 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-27 17:36:42 +00:00
Asterisk Autobuilder
2387b63233 Merge r383863 for ASTERISK-21068
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc2@383972 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-27 14:15:39 +00:00
Asterisk Autobuilder
e6f0c67991 Update version, remove summaries, merge blockers
* Merged r381281 for ASTERISK-20650
* Merged r383839 for ASTERISK-21162



git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc2@383969 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-27 13:52:47 +00:00
Asterisk Autobuilder
e00fcd62dd Create 1.8.21.0-rc2
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc2@383966 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-03-27 11:29:36 +00:00
Asterisk Autobuilder
3fe7a6c992 Use autotagged externals
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc1@380526 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-01-30 17:52:11 +00:00
Asterisk Autobuilder
21ae3d8e61 Importing release summary for 1.8.21.0-rc1 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc1@380525 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-01-30 17:52:00 +00:00
Asterisk Autobuilder
5cf8a20545 Importing files for 1.8.21.0-rc1 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc1@380524 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-01-30 17:51:52 +00:00
Asterisk Autobuilder
365dbcf175 Creating tag for the release of asterisk-1.8.21.0-rc1
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.8.21.0-rc1@380523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-01-30 17:50:45 +00:00
11 changed files with 45629 additions and 49 deletions

1
.lastclean Normal file
View File

@@ -0,0 +1 @@
40

1
.version Normal file
View File

@@ -0,0 +1 @@
1.8.21.0

44414
ChangeLog Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,479 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Release Summary - asterisk-1.8.21.0</title></head>
<body>
<h1 align="center"><a name="top">Release Summary</a></h1>
<h3 align="center">asterisk-1.8.21.0</h3>
<h3 align="center">Date: 2013-03-28</h3>
<h3 align="center">&lt;asteriskteam@digium.com&gt;</h3>
<hr/>
<h2 align="center">Table of Contents</h2>
<ol>
<li><a href="#summary">Summary</a></li>
<li><a href="#contributors">Contributors</a></li>
<li><a href="#issues">Closed Issues</a></li>
<li><a href="#commits">Other Changes</a></li>
<li><a href="#diffstat">Diffstat</a></li>
</ol>
<hr/>
<a name="summary"><h2 align="center">Summary</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This release includes only bug fixes. The changes included were made only to address problems that have been identified in this release series. Users should be able to safely upgrade to this version if this release series is already in use. Users considering upgrading from a previous release series are strongly encouraged to review the UPGRADE.txt document as well as the CHANGES document for information about upgrading to this release series.</p>
<p>The data in this summary reflects changes that have been made since the previous release, asterisk-1.8.20.0.</p>
<hr/>
<a name="contributors"><h2 align="center">Contributors</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This table lists the people who have submitted code, those that have tested patches, as well as those that reported issues on the issue tracker that were resolved in this release. For coders, the number is how many of their patches (of any size) were committed into this release. For testers, the number is the number of times their name was listed as assisting with testing a patch. Finally, for reporters, the number is the number of issues that they reported that were closed by commits that went into this release.</p>
<table width="100%" border="0">
<tr>
<td width="33%"><h3>Coders</h3></td>
<td width="33%"><h3>Testers</h3></td>
<td width="33%"><h3>Reporters</h3></td>
</tr>
<tr valign="top">
<td>
23 rmudgett<br/>
8 mjordan<br/>
6 bebuild<br/>
6 kmoore<br/>
4 dlee<br/>
3 elguero<br/>
3 mmichelson<br/>
2 dkerr<br/>
2 igorg<br/>
2 jonax<br/>
2 jrose<br/>
2 roeften<br/>
1 bootc<br/>
1 Christian Hesse<br/>
1 Corey Farrell<br/>
1 Eelco Brolman<br/>
1 Eric Hill<br/>
1 Jakob Hirsch<br/>
1 jcolp<br/>
1 lathama<br/>
1 newtonr<br/>
1 Nikolay Ilduganov<br/>
1 qwell<br/>
1 russell<br/>
1 seanbright<br/>
1 snuffy<br/>
1 Stefan Reuter<br/>
1 Thomas Omerzu<br/>
1 wdoekes<br/>
</td>
<td>
3 elguero<br/>
2 Deepak Lohani<br/>
2 Jonas Falck<br/>
2 Kayode<br/>
2 mjordan<br/>
2 rmudgett<br/>
2 Thomas Sevestre<br/>
1 Alexander Heinz<br/>
1 benjamin<br/>
1 Bryan Hunt<br/>
1 call<br/>
1 Chris Warr<br/>
1 Christian Hesse<br/>
1 Danny Nicholas<br/>
1 David van Geyn<br/>
1 eliafino<br/>
1 Eric Hill<br/>
1 Jamuel Starkey<br/>
1 Joel Vandal<br/>
1 kaldemar<br/>
1 Nikolay Ilduganov<br/>
</td>
<td>
2 dkerr<br/>
2 jbigelow<br/>
1 bklang<br/>
1 bootc<br/>
1 brhunt<br/>
1 call<br/>
1 challado<br/>
1 chesse<br/>
1 coreyfarrell<br/>
1 eelcob<br/>
1 erichill<br/>
1 jhirsch<br/>
1 jmce<br/>
1 jmillan<br/>
1 joel_vandal<br/>
1 kmoore<br/>
1 lexus350<br/>
1 menschentier<br/>
1 ovi<br/>
1 rmudgett<br/>
1 roeften<br/>
1 rudolfasd<br/>
1 saghul<br/>
1 snuffy<br/>
1 srt<br/>
1 t-o<br/>
1 thomas987<br/>
1 tootai<br/>
1 wcselby<br/>
1 xhienne<br/>
</td>
</tr>
</table>
<hr/>
<a name="issues"><h2 align="center">Closed Issues</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a list of all issues from the issue tracker that were closed by changes that went into this release.</p>
<h3>Category: Addons/chan_mobile</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16357">ASTERISK-16357</a>: chan_mobile unable to connect to cellphone<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379342">379342</a><br/>
Reporter: challado<br/>
Testers: Alexander Heinz, Nikolay Ilduganov, benjamin, eliafino, David van Geyn<br/>
Coders: Nikolay Ilduganov<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16822">ASTERISK-16822</a>: Channel Variable SMSSRC not set properly<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379178">379178</a><br/>
Reporter: menschentier<br/>
Testers: Jonas Falck<br/>
Coders: jonax, roeften<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-19153">ASTERISK-19153</a>: [patch] - Sms sender is not parsed correctly in incoming sms<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379178">379178</a><br/>
Reporter: roeften<br/>
Testers: Jonas Falck<br/>
Coders: jonax, roeften<br/>
<br/>
<h3>Category: Applications/SLA</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20440">ASTERISK-20440</a>: [patch] No ringback towards SLAstation on outbound trunk call.<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379825">379825</a><br/>
Reporter: dkerr<br/>
Coders: dkerr<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20462">ASTERISK-20462</a>: [patch] Trunk not hungup if SLA Station hangs up before answer<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379825">379825</a><br/>
Reporter: dkerr<br/>
Coders: dkerr<br/>
<br/>
<h3>Category: Applications/app_confbridge</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16640">ASTERISK-16640</a>: ConfBridge crashes when leave simultaneously<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379091">379091</a><br/>
Reporter: thomas987<br/>
Coders: mjordan<br/>
<br/>
<h3>Category: Applications/app_meetme</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20440">ASTERISK-20440</a>: [patch] No ringback towards SLAstation on outbound trunk call.<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379825">379825</a><br/>
Reporter: dkerr<br/>
Coders: dkerr<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20462">ASTERISK-20462</a>: [patch] Trunk not hungup if SLA Station hangs up before answer<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379825">379825</a><br/>
Reporter: dkerr<br/>
Coders: dkerr<br/>
<br/>
<h3>Category: Applications/app_minivm</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-18697">ASTERISK-18697</a>: [minivm] Crash in MinivmNotify<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379608">379608</a><br/>
Reporter: bootc<br/>
Testers: Chris Warr<br/>
Coders: bootc<br/>
<br/>
<h3>Category: Applications/app_queue</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20743">ASTERISK-20743</a>: Queue Log - All Calls End With COMPLETECALLER When h Extension Is Present<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378514">378514</a><br/>
Reporter: call<br/>
Testers: call, elguero<br/>
Coders: elguero<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20801">ASTERISK-20801</a>: Non-SIP queue members get no calls when ringinuse=no.<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378036">378036</a><br/>
Reporter: rmudgett<br/>
Coders: rmudgett<br/>
<br/>
<h3>Category: Bridges/Softmix</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16640">ASTERISK-16640</a>: ConfBridge crashes when leave simultaneously<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379091">379091</a><br/>
Reporter: thomas987<br/>
Coders: mjordan<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16835">ASTERISK-16835</a>: Segfault when shutting down and ongoing traffic to ConfBridge application<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379091">379091</a><br/>
Reporter: saghul<br/>
Coders: mjordan<br/>
<br/>
<h3>Category: Channels/chan_misdn</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-15456">ASTERISK-15456</a>: [patch] chan_misdn does not set INVALID_EXTEN<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379145">379145</a><br/>
Reporter: t-o<br/>
Coders: Thomas Omerzu<br/>
<br/>
<h3>Category: Channels/chan_sip/General</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20653">ASTERISK-20653</a>: Asterisk allows Session-Expires below 90 in a 200 OK<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377623">377623</a><br/>
Reporter: kmoore<br/>
Coders: kmoore<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20805">ASTERISK-20805</a>: SIP Notify message has incorrect IP address in FROM field<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378554">378554</a><br/>
Reporter: brhunt<br/>
Testers: Bryan Hunt, elguero<br/>
Coders: elguero<br/>
<br/>
<h3>Category: Channels/chan_sip/Interoperability</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20837">ASTERISK-20837</a>: [patch] build_route fails to parse Record-Route headers longer than 255 characters<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379392">379392</a><br/>
Reporter: coreyfarrell<br/>
Coders: Corey Farrell<br/>
<br/>
<h3>Category: Channels/chan_sip/SRTP</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20499">ASTERISK-20499</a>: Crash in libsrtp srtp_unprotect_rtcp when SIP channel is bridged with non-optimizing Local channel<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378591">378591</a><br/>
Reporter: tootai<br/>
Coders: jrose<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20849">ASTERISK-20849</a>: SDP crypto attribute is not well formed in the SDP ANSWER<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380347">380347</a><br/>
Reporter: jmillan<br/>
Coders: dlee<br/>
<br/>
<h3>Category: Channels/chan_sip/T.38</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20897">ASTERISK-20897</a>: case sensitive match against T.38 params causes T38MaxBitRate to be negotiated at 2400 baud instead of 14400<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380458">380458</a><br/>
Reporter: erichill<br/>
Testers: Eric Hill<br/>
Coders: Eric Hill<br/>
<br/>
<h3>Category: Channels/chan_unistim</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20417">ASTERISK-20417</a>: Nortel transfer problem<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377557">377557</a><br/>
Reporter: rudolfasd<br/>
Coders: igorg<br/>
<br/>
<h3>Category: Codecs/codec_ilbc</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20914">ASTERISK-20914</a>: Segfault when iLBC voice frame is interpolated in a jitter buffer due to codec_ilbc's improper manipulation of datalen<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379718">379718</a><br/>
Reporter: jmce<br/>
Coders: mjordan<br/>
<br/>
<h3>Category: Core/BuildSystem</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20980">ASTERISK-20980</a>: [patch] ./configure fails with ptlib 2.10.9<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380297">380297</a><br/>
Reporter: srt<br/>
Coders: Stefan Reuter<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-21006">ASTERISK-21006</a>: unsupported host os "linux-gnueabihf"<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380520">380520</a><br/>
Reporter: chesse<br/>
Testers: Christian Hesse<br/>
Coders: Christian Hesse<br/>
<br/>
<h3>Category: Core/Channels</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-18975">ASTERISK-18975</a>: Manager Redirect action on bridged channel pair causes intermittent hangup on second channel<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378356">378356</a><br/>
Reporter: bklang<br/>
Testers: rmudgett, Thomas Sevestre, Deepak Lohani, Kayode<br/>
Coders: rmudgett<br/>
<br/>
<h3>Category: Core/General</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16835">ASTERISK-16835</a>: Segfault when shutting down and ongoing traffic to ConfBridge application<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379091">379091</a><br/>
Reporter: saghul<br/>
Coders: mjordan<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20826">ASTERISK-20826</a>: Replace last few tabs with spaces in causes.h<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378733">378733</a><br/>
Reporter: snuffy<br/>
Coders: snuffy<br/>
<br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20945">ASTERISK-20945</a>: "Unable to connect to remote asterisk" message on service asterisk start, even though service is running<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379760">379760</a><br/>
Reporter: wcselby<br/>
Testers: elguero, Jamuel Starkey, kaldemar, Danny Nicholas, mjordan<br/>
Coders: elguero, mjordan<br/>
<br/>
<h3>Category: Core/Jitterbuffer</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20914">ASTERISK-20914</a>: Segfault when iLBC voice frame is interpolated in a jitter buffer due to codec_ilbc's improper manipulation of datalen<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379718">379718</a><br/>
Reporter: jmce<br/>
Coders: mjordan<br/>
<br/>
<h3>Category: Core/ManagerInterface</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-19948">ASTERISK-19948</a>: Asterisk 1.8 manager redirect command fails when redirecting multiple channels currently bridged together via dial command.<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378356">378356</a><br/>
Reporter: lexus350<br/>
Testers: rmudgett, Thomas Sevestre, Deepak Lohani, Kayode<br/>
Coders: rmudgett<br/>
<br/>
<h3>Category: Core/Portability</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-16854">ASTERISK-16854</a>: [patch] roundf causing asterisk to fail to compile<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379547">379547</a><br/>
Reporter: ovi<br/>
Coders: wdoekes<br/>
<br/>
<h3>Category: Core/RTP</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20772">ASTERISK-20772</a>: Loop bug in ast_rtp_lookup_mime_multiple2() [main/rtp_engine.c]<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378776">378776</a><br/>
Reporter: xhienne<br/>
Coders: dlee<br/>
<br/>
<h3>Category: Resources/res_calendar_icalendar</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-21012">ASTERISK-21012</a>: Memory Leak on res_calendar (icalendar)<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380451">380451</a><br/>
Reporter: joel_vandal<br/>
Testers: Joel Vandal<br/>
Coders: mjordan<br/>
<br/>
<h3>Category: Resources/res_rtp_asterisk</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20906">ASTERISK-20906</a>: DTMF in SIP not working after HOLD / UNHOLD<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378967">378967</a><br/>
Reporter: eelcob<br/>
Coders: Eelco Brolman<br/>
<br/>
<h3>Category: Utilities/astcanary</h3><br/>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-20947">ASTERISK-20947</a>: astcanary exits immediately because of wrong pid argument<br/>
Revision: <a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379509">379509</a><br/>
Reporter: jhirsch<br/>
Testers: mjordan<br/>
Coders: Jakob Hirsch<br/>
<br/>
<hr/>
<a name="commits"><h2 align="center">Commits Not Associated with an Issue</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a list of all changes that went into this release that did not directly close an issue from the issue tracker. The commits may have been marked as being related to an issue. If that is the case, the issue numbers are listed here, as well.</p>
<table width="100%" border="1">
<tr><td><b>Revision</b></td><td><b>Author</b></td><td><b>Summary</b></td><td><b>Issues Referenced</b></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377591">377591</a></td><td>igorg</td><td>Fix codec mismatch</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20183">ASTERISK-20183</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377655">377655</a></td><td>kmoore</td><td>Ensure ReceiveFax provides a CED tone via T.38</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377688">377688</a></td><td>rmudgett</td><td>Cleanup astdb on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377704">377704</a></td><td>rmudgett</td><td>Cleanup dnsmgr on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377708">377708</a></td><td>rmudgett</td><td>Cleanup event on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377712">377712</a></td><td>rmudgett</td><td>Cleanup frame on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377740">377740</a></td><td>rmudgett</td><td>Cleanup indications on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377771">377771</a></td><td>rmudgett</td><td>Cleanup logger on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377806">377806</a></td><td>rmudgett</td><td>Cleanup pbx on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377837">377837</a></td><td>rmudgett</td><td>Cleanup taskprocessor on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377840">377840</a></td><td>mmichelson</td><td>Fix crash that can occur if CLI registration fails for an aliased command.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377847">377847</a></td><td>rmudgett</td><td>Cleanup udptl on exit.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377881">377881</a></td><td>rmudgett</td><td>Cleanup CLI commands on exit for several files.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20649">ASTERISK-20649</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377922">377922</a></td><td>newtonr</td><td>Incremented EXTRA_SOUNDS_VERSION in sounds/Makefile to 1.4.12 for new Extra Sounds releases</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=377946">377946</a></td><td>kmoore</td><td>Ensure Min-SE is included in outbound INVITEs</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378088">378088</a></td><td>rmudgett</td><td>Make chan_local module references tied to local_pvt lifetime.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378092">378092</a></td><td>rmudgett</td><td>Fix potential double free when unloading a module.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378119">378119</a></td><td>kmoore</td><td>Add test events for time limit-related hangups</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378147">378147</a></td><td>mmichelson</td><td>Adjust RTP instance's available_formats callback to return the correct type.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378164">378164</a></td><td>rmudgett</td><td>Give the causes[] a struct name.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378217">378217</a></td><td>kmoore</td><td>Ensure chan_sip rejects encrypted streams without crypto info</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378269">378269</a></td><td>mjordan</td><td>Resolve crashes due to large stack allocations when using TCP</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20658">ASTERISK-20658</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378303">378303</a></td><td>mjordan</td><td>Prevent exhaustion of system resources through exploitation of event cache</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20175">ASTERISK-20175</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378375">378375</a></td><td>mjordan</td><td>Prevent crashes from occurring when reading from data sources with large values</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20658">ASTERISK-20658</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378427">378427</a></td><td>rmudgett</td><td>chan_agent: Fix agent_indicate() locking.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378455">378455</a></td><td>kmoore</td><td>Add missing test event</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378456">378456</a></td><td>rmudgett</td><td>chan_agent: Misc code cleanup.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378486">378486</a></td><td>rmudgett</td><td>chan_agent: Fix wrapup time wait response.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378663">378663</a></td><td>rmudgett</td><td>app_queue: Fix multiple calls to a queue member that is in only one queue.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-16115">ASTERISK-16115</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=378933">378933</a></td><td>dlee</td><td>Fix XML encoding of 'identity display' in NOTIFY messages.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379001">379001</a></td><td>dlee</td><td>Fix XML encoding of 'identity display' in NOTIFY messages, continued.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379226">379226</a></td><td>rmudgett</td><td>chan_misdn: Fix compile error.</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-15456">ASTERISK-15456</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379276">379276</a></td><td>qwell</td><td>Reduce number of packages install_prereq installs on Debian systems.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379310">379310</a></td><td>mmichelson</td><td>Further fix misinformation in the description of manager MailboxStatus command.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379645">379645</a></td><td>lathama</td><td>Add LDAP libraries to install script</td>
<td><a href="https://issues.asterisk.org/jira/browse/ASTERISK-20886">ASTERISK-20886</a></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=379963">379963</a></td><td>rmudgett</td><td>Attempt to be more helpful when using a bad ao2 object pointer.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380210">380210</a></td><td>russell</td><td>Change cleanup ordering in filestream destructor.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380254">380254</a></td><td>seanbright</td><td>Correct the number of available call numbers in IAX2.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=380364">380364</a></td><td>rmudgett</td><td>chan_agent: Prevent multiple channels from logging in as the same agent.</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=383966">383966</a></td><td>bebuild</td><td>Create 1.8.21.0-rc2</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=383969">383969</a></td><td>bebuild</td><td>Update version, remove summaries, merge blockers</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=383972">383972</a></td><td>bebuild</td><td>Merge r383863 for ASTERISK-21068</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=384086">384086</a></td><td>bebuild</td><td>Update with security patches; regression fixes</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=384089">384089</a></td><td>bebuild</td><td>Update ChangeLog</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/branches/1.8?view=revision&revision=384095">384095</a></td><td>bebuild</td><td>Importing release summary for 1.8.21.0-rc2 release.</td>
<td></td></tr></table>
<hr/>
<a name="diffstat"><h2 align="center">Diffstat Results</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a summary of the changes to the source code that went into this release that was generated using the diffstat utility.</p>
<pre>
.version | 2
ChangeLog | 93 +++
UPGRADE.txt | 10
addons/chan_mobile.c | 3
apps/app_confbridge.c | 4
apps/app_meetme.c | 821 +++++++++++++++++++---------------
apps/app_minivm.c | 1
apps/app_queue.c | 187 +++++--
asterisk-1.8.21.0-rc1-summary.html | 465 -------------------
asterisk-1.8.21.0-rc1-summary.txt | 576 -----------------------
asterisk-1.8.21.0-rc2-summary.html | 68 ++
asterisk-1.8.21.0-rc2-summary.txt | 102 ++++
autoconf/ast_check_pwlib.m4 | 2
bridges/bridge_softmix.c | 5
channels/chan_agent.c | 480 ++++++++-----------
channels/chan_dahdi.c | 7
channels/chan_iax2.c | 41 -
channels/chan_local.c | 43 +
channels/chan_misdn.c | 3
channels/chan_sip.c | 399 ++++++++++++----
channels/chan_skinny.c | 16
channels/chan_unistim.c | 22
channels/iax2.h | 8
channels/sip/include/reqresp_parser.h | 11
channels/sip/include/sip.h | 2
channels/sip/reqresp_parser.c | 53 ++
channels/sip/sdp_crypto.c | 28 -
codecs/codec_ilbc.c | 16
configure.ac | 4
contrib/init.d/rc.archlinux.asterisk | 2
contrib/init.d/rc.debian.asterisk | 2
contrib/init.d/rc.gentoo.asterisk | 2
contrib/init.d/rc.mandriva.asterisk | 2
contrib/init.d/rc.redhat.asterisk | 2
contrib/init.d/rc.slackware.asterisk | 2
contrib/init.d/rc.suse.asterisk | 2
contrib/scripts/install_prereq | 10
contrib/scripts/safe_asterisk | 2
funcs/func_devstate.c | 6
funcs/func_realtime.c | 17
include/asterisk/autoconfig.h.in | 16
include/asterisk/causes.h | 10
include/asterisk/channel.h | 13
include/asterisk/compat.h | 8
include/asterisk/devicestate.h | 16
include/asterisk/event_defs.h | 8
include/asterisk/rtp_engine.h | 2
include/asterisk/utils.h | 20
main/aoc.c | 5
main/asterisk.c | 7
main/astobj2.c | 13
main/cdr.c | 24
main/cel.c | 1
main/channel.c | 17
main/config.c | 11
main/data.c | 2
main/db.c | 65 ++
main/devicestate.c | 51 +-
main/dnsmgr.c | 23
main/event.c | 3
main/features.c | 7
main/file.c | 21
main/frame.c | 6
main/http.c | 35 +
main/image.c | 6
main/indications.c | 15
main/loader.c | 28 -
main/logger.c | 12
main/manager.c | 141 ++++-
main/pbx.c | 22
main/rtp_engine.c | 15
main/strcompat.c | 16
main/stun.c | 6
main/taskprocessor.c | 2
main/timing.c | 10
main/udptl.c | 14
main/utils.c | 63 ++
res/res_calendar.c | 8
res/res_calendar_icalendar.c | 5
res/res_clialiases.c | 5
res/res_fax.c | 3
res/res_jabber.c | 66 +-
res/res_rtp_asterisk.c | 8
res/res_srtp.c | 15
sounds/Makefile | 4
tests/test_xml_escape.c | 118 ++++
86 files changed, 2401 insertions(+), 2086 deletions(-)
</pre><br/>
<hr/>
</body>
</html>

View File

@@ -0,0 +1,599 @@
Release Summary
asterisk-1.8.21.0
Date: 2013-03-28
<asteriskteam@digium.com>
----------------------------------------------------------------------
Table of Contents
1. Summary
2. Contributors
3. Closed Issues
4. Other Changes
5. Diffstat
----------------------------------------------------------------------
Summary
[Back to Top]
This release includes only bug fixes. The changes included were made only
to address problems that have been identified in this release series.
Users should be able to safely upgrade to this version if this release
series is already in use. Users considering upgrading from a previous
release series are strongly encouraged to review the UPGRADE.txt document
as well as the CHANGES document for information about upgrading to this
release series.
The data in this summary reflects changes that have been made since the
previous release, asterisk-1.8.20.0.
----------------------------------------------------------------------
Contributors
[Back to Top]
This table lists the people who have submitted code, those that have
tested patches, as well as those that reported issues on the issue tracker
that were resolved in this release. For coders, the number is how many of
their patches (of any size) were committed into this release. For testers,
the number is the number of times their name was listed as assisting with
testing a patch. Finally, for reporters, the number is the number of
issues that they reported that were closed by commits that went into this
release.
Coders Testers Reporters
23 rmudgett 3 elguero 2 dkerr
8 mjordan 2 Deepak Lohani 2 jbigelow
6 bebuild 2 Jonas Falck 1 bklang
6 kmoore 2 Kayode 1 bootc
4 dlee 2 mjordan 1 brhunt
3 elguero 2 rmudgett 1 call
3 mmichelson 2 Thomas Sevestre 1 challado
2 dkerr 1 Alexander Heinz 1 chesse
2 igorg 1 benjamin 1 coreyfarrell
2 jonax 1 Bryan Hunt 1 eelcob
2 jrose 1 call 1 erichill
2 roeften 1 Chris Warr 1 jhirsch
1 bootc 1 Christian Hesse 1 jmce
1 Christian Hesse 1 Danny Nicholas 1 jmillan
1 Corey Farrell 1 David van Geyn 1 joel_vandal
1 Eelco Brolman 1 eliafino 1 kmoore
1 Eric Hill 1 Eric Hill 1 lexus350
1 Jakob Hirsch 1 Jamuel Starkey 1 menschentier
1 jcolp 1 Joel Vandal 1 ovi
1 lathama 1 kaldemar 1 rmudgett
1 newtonr 1 Nikolay Ilduganov 1 roeften
1 Nikolay Ilduganov 1 rudolfasd
1 qwell 1 saghul
1 russell 1 snuffy
1 seanbright 1 srt
1 snuffy 1 t-o
1 Stefan Reuter 1 thomas987
1 Thomas Omerzu 1 tootai
1 wdoekes 1 wcselby
1 xhienne
----------------------------------------------------------------------
Closed Issues
[Back to Top]
This is a list of all issues from the issue tracker that were closed by
changes that went into this release.
Category: Addons/chan_mobile
ASTERISK-16357: chan_mobile unable to connect to cellphone
Revision: 379342
Reporter: challado
Testers: Alexander Heinz, Nikolay Ilduganov, benjamin, eliafino, David van
Geyn
Coders: Nikolay Ilduganov
ASTERISK-16822: Channel Variable SMSSRC not set properly
Revision: 379178
Reporter: menschentier
Testers: Jonas Falck
Coders: jonax, roeften
ASTERISK-19153: [patch] - Sms sender is not parsed correctly in incoming
sms
Revision: 379178
Reporter: roeften
Testers: Jonas Falck
Coders: jonax, roeften
Category: Applications/SLA
ASTERISK-20440: [patch] No ringback towards SLAstation on outbound trunk
call.
Revision: 379825
Reporter: dkerr
Coders: dkerr
ASTERISK-20462: [patch] Trunk not hungup if SLA Station hangs up before
answer
Revision: 379825
Reporter: dkerr
Coders: dkerr
Category: Applications/app_confbridge
ASTERISK-16640: ConfBridge crashes when leave simultaneously
Revision: 379091
Reporter: thomas987
Coders: mjordan
Category: Applications/app_meetme
ASTERISK-20440: [patch] No ringback towards SLAstation on outbound trunk
call.
Revision: 379825
Reporter: dkerr
Coders: dkerr
ASTERISK-20462: [patch] Trunk not hungup if SLA Station hangs up before
answer
Revision: 379825
Reporter: dkerr
Coders: dkerr
Category: Applications/app_minivm
ASTERISK-18697: [minivm] Crash in MinivmNotify
Revision: 379608
Reporter: bootc
Testers: Chris Warr
Coders: bootc
Category: Applications/app_queue
ASTERISK-20743: Queue Log - All Calls End With COMPLETECALLER When h
Extension Is Present
Revision: 378514
Reporter: call
Testers: call, elguero
Coders: elguero
ASTERISK-20801: Non-SIP queue members get no calls when ringinuse=no.
Revision: 378036
Reporter: rmudgett
Coders: rmudgett
Category: Bridges/Softmix
ASTERISK-16640: ConfBridge crashes when leave simultaneously
Revision: 379091
Reporter: thomas987
Coders: mjordan
ASTERISK-16835: Segfault when shutting down and ongoing traffic to
ConfBridge application
Revision: 379091
Reporter: saghul
Coders: mjordan
Category: Channels/chan_misdn
ASTERISK-15456: [patch] chan_misdn does not set INVALID_EXTEN
Revision: 379145
Reporter: t-o
Coders: Thomas Omerzu
Category: Channels/chan_sip/General
ASTERISK-20653: Asterisk allows Session-Expires below 90 in a 200 OK
Revision: 377623
Reporter: kmoore
Coders: kmoore
ASTERISK-20805: SIP Notify message has incorrect IP address in FROM field
Revision: 378554
Reporter: brhunt
Testers: Bryan Hunt, elguero
Coders: elguero
Category: Channels/chan_sip/Interoperability
ASTERISK-20837: [patch] build_route fails to parse Record-Route headers
longer than 255 characters
Revision: 379392
Reporter: coreyfarrell
Coders: Corey Farrell
Category: Channels/chan_sip/SRTP
ASTERISK-20499: Crash in libsrtp srtp_unprotect_rtcp when SIP channel is
bridged with non-optimizing Local channel
Revision: 378591
Reporter: tootai
Coders: jrose
ASTERISK-20849: SDP crypto attribute is not well formed in the SDP ANSWER
Revision: 380347
Reporter: jmillan
Coders: dlee
Category: Channels/chan_sip/T.38
ASTERISK-20897: case sensitive match against T.38 params causes
T38MaxBitRate to be negotiated at 2400 baud instead of 14400
Revision: 380458
Reporter: erichill
Testers: Eric Hill
Coders: Eric Hill
Category: Channels/chan_unistim
ASTERISK-20417: Nortel transfer problem
Revision: 377557
Reporter: rudolfasd
Coders: igorg
Category: Codecs/codec_ilbc
ASTERISK-20914: Segfault when iLBC voice frame is interpolated in a jitter
buffer due to codec_ilbc's improper manipulation of datalen
Revision: 379718
Reporter: jmce
Coders: mjordan
Category: Core/BuildSystem
ASTERISK-20980: [patch] ./configure fails with ptlib 2.10.9
Revision: 380297
Reporter: srt
Coders: Stefan Reuter
ASTERISK-21006: unsupported host os "linux-gnueabihf"
Revision: 380520
Reporter: chesse
Testers: Christian Hesse
Coders: Christian Hesse
Category: Core/Channels
ASTERISK-18975: Manager Redirect action on bridged channel pair causes
intermittent hangup on second channel
Revision: 378356
Reporter: bklang
Testers: rmudgett, Thomas Sevestre, Deepak Lohani, Kayode
Coders: rmudgett
Category: Core/General
ASTERISK-16835: Segfault when shutting down and ongoing traffic to
ConfBridge application
Revision: 379091
Reporter: saghul
Coders: mjordan
ASTERISK-20826: Replace last few tabs with spaces in causes.h
Revision: 378733
Reporter: snuffy
Coders: snuffy
ASTERISK-20945: "Unable to connect to remote asterisk" message on service
asterisk start, even though service is running
Revision: 379760
Reporter: wcselby
Testers: elguero, Jamuel Starkey, kaldemar, Danny Nicholas, mjordan
Coders: elguero, mjordan
Category: Core/Jitterbuffer
ASTERISK-20914: Segfault when iLBC voice frame is interpolated in a jitter
buffer due to codec_ilbc's improper manipulation of datalen
Revision: 379718
Reporter: jmce
Coders: mjordan
Category: Core/ManagerInterface
ASTERISK-19948: Asterisk 1.8 manager redirect command fails when
redirecting multiple channels currently bridged together via dial command.
Revision: 378356
Reporter: lexus350
Testers: rmudgett, Thomas Sevestre, Deepak Lohani, Kayode
Coders: rmudgett
Category: Core/Portability
ASTERISK-16854: [patch] roundf causing asterisk to fail to compile
Revision: 379547
Reporter: ovi
Coders: wdoekes
Category: Core/RTP
ASTERISK-20772: Loop bug in ast_rtp_lookup_mime_multiple2()
[main/rtp_engine.c]
Revision: 378776
Reporter: xhienne
Coders: dlee
Category: Resources/res_calendar_icalendar
ASTERISK-21012: Memory Leak on res_calendar (icalendar)
Revision: 380451
Reporter: joel_vandal
Testers: Joel Vandal
Coders: mjordan
Category: Resources/res_rtp_asterisk
ASTERISK-20906: DTMF in SIP not working after HOLD / UNHOLD
Revision: 378967
Reporter: eelcob
Coders: Eelco Brolman
Category: Utilities/astcanary
ASTERISK-20947: astcanary exits immediately because of wrong pid argument
Revision: 379509
Reporter: jhirsch
Testers: mjordan
Coders: Jakob Hirsch
----------------------------------------------------------------------
Commits Not Associated with an Issue
[Back to Top]
This is a list of all changes that went into this release that did not
directly close an issue from the issue tracker. The commits may have been
marked as being related to an issue. If that is the case, the issue
numbers are listed here, as well.
+------------------------------------------------------------------------+
| Revision | Author | Summary | Issues |
| | | | Referenced |
|----------+------------+-------------------------------+----------------|
| 377591 | igorg | Fix codec mismatch | ASTERISK-20183 |
|----------+------------+-------------------------------+----------------|
| 377655 | kmoore | Ensure ReceiveFax provides a | |
| | | CED tone via T.38 | |
|----------+------------+-------------------------------+----------------|
| 377688 | rmudgett | Cleanup astdb on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377704 | rmudgett | Cleanup dnsmgr on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377708 | rmudgett | Cleanup event on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377712 | rmudgett | Cleanup frame on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377740 | rmudgett | Cleanup indications on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377771 | rmudgett | Cleanup logger on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377806 | rmudgett | Cleanup pbx on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377837 | rmudgett | Cleanup taskprocessor on | ASTERISK-20649 |
| | | exit. | |
|----------+------------+-------------------------------+----------------|
| | | Fix crash that can occur if | |
| 377840 | mmichelson | CLI registration fails for an | |
| | | aliased command. | |
|----------+------------+-------------------------------+----------------|
| 377847 | rmudgett | Cleanup udptl on exit. | ASTERISK-20649 |
|----------+------------+-------------------------------+----------------|
| 377881 | rmudgett | Cleanup CLI commands on exit | ASTERISK-20649 |
| | | for several files. | |
|----------+------------+-------------------------------+----------------|
| | | Incremented | |
| 377922 | newtonr | EXTRA_SOUNDS_VERSION in | |
| | | sounds/Makefile to 1.4.12 for | |
| | | new Extra Sounds releases | |
|----------+------------+-------------------------------+----------------|
| 377946 | kmoore | Ensure Min-SE is included in | |
| | | outbound INVITEs | |
|----------+------------+-------------------------------+----------------|
| | | Make chan_local module | |
| 378088 | rmudgett | references tied to local_pvt | |
| | | lifetime. | |
|----------+------------+-------------------------------+----------------|
| 378092 | rmudgett | Fix potential double free | |
| | | when unloading a module. | |
|----------+------------+-------------------------------+----------------|
| 378119 | kmoore | Add test events for time | |
| | | limit-related hangups | |
|----------+------------+-------------------------------+----------------|
| | | Adjust RTP instance's | |
| 378147 | mmichelson | available_formats callback to | |
| | | return the correct type. | |
|----------+------------+-------------------------------+----------------|
| 378164 | rmudgett | Give the causes[] a struct | |
| | | name. | |
|----------+------------+-------------------------------+----------------|
| | | Ensure chan_sip rejects | |
| 378217 | kmoore | encrypted streams without | |
| | | crypto info | |
|----------+------------+-------------------------------+----------------|
| | | Resolve crashes due to large | |
| 378269 | mjordan | stack allocations when using | ASTERISK-20658 |
| | | TCP | |
|----------+------------+-------------------------------+----------------|
| | | Prevent exhaustion of system | |
| 378303 | mjordan | resources through | ASTERISK-20175 |
| | | exploitation of event cache | |
|----------+------------+-------------------------------+----------------|
| | | Prevent crashes from | |
| 378375 | mjordan | occurring when reading from | ASTERISK-20658 |
| | | data sources with large | |
| | | values | |
|----------+------------+-------------------------------+----------------|
| 378427 | rmudgett | chan_agent: Fix | |
| | | agent_indicate() locking. | |
|----------+------------+-------------------------------+----------------|
| 378455 | kmoore | Add missing test event | |
|----------+------------+-------------------------------+----------------|
| 378456 | rmudgett | chan_agent: Misc code | |
| | | cleanup. | |
|----------+------------+-------------------------------+----------------|
| 378486 | rmudgett | chan_agent: Fix wrapup time | |
| | | wait response. | |
|----------+------------+-------------------------------+----------------|
| | | app_queue: Fix multiple calls | |
| 378663 | rmudgett | to a queue member that is in | ASTERISK-16115 |
| | | only one queue. | |
|----------+------------+-------------------------------+----------------|
| 378933 | dlee | Fix XML encoding of 'identity | |
| | | display' in NOTIFY messages. | |
|----------+------------+-------------------------------+----------------|
| | | Fix XML encoding of 'identity | |
| 379001 | dlee | display' in NOTIFY messages, | |
| | | continued. | |
|----------+------------+-------------------------------+----------------|
| 379226 | rmudgett | chan_misdn: Fix compile | ASTERISK-15456 |
| | | error. | |
|----------+------------+-------------------------------+----------------|
| | | Reduce number of packages | |
| 379276 | qwell | install_prereq installs on | |
| | | Debian systems. | |
|----------+------------+-------------------------------+----------------|
| | | Further fix misinformation in | |
| 379310 | mmichelson | the description of manager | |
| | | MailboxStatus command. | |
|----------+------------+-------------------------------+----------------|
| 379645 | lathama | Add LDAP libraries to install | ASTERISK-20886 |
| | | script | |
|----------+------------+-------------------------------+----------------|
| | | Attempt to be more helpful | |
| 379963 | rmudgett | when using a bad ao2 object | |
| | | pointer. | |
|----------+------------+-------------------------------+----------------|
| 380210 | russell | Change cleanup ordering in | |
| | | filestream destructor. | |
|----------+------------+-------------------------------+----------------|
| | | Correct the number of | |
| 380254 | seanbright | available call numbers in | |
| | | IAX2. | |
|----------+------------+-------------------------------+----------------|
| | | chan_agent: Prevent multiple | |
| 380364 | rmudgett | channels from logging in as | |
| | | the same agent. | |
|----------+------------+-------------------------------+----------------|
| 383966 | bebuild | Create 1.8.21.0-rc2 | |
|----------+------------+-------------------------------+----------------|
| 383969 | bebuild | Update version, remove | |
| | | summaries, merge blockers | |
|----------+------------+-------------------------------+----------------|
| 383972 | bebuild | Merge r383863 for | |
| | | ASTERISK-21068 | |
|----------+------------+-------------------------------+----------------|
| 384086 | bebuild | Update with security patches; | |
| | | regression fixes | |
|----------+------------+-------------------------------+----------------|
| 384089 | bebuild | Update ChangeLog | |
|----------+------------+-------------------------------+----------------|
| 384095 | bebuild | Importing release summary for | |
| | | 1.8.21.0-rc2 release. | |
+------------------------------------------------------------------------+
----------------------------------------------------------------------
Diffstat Results
[Back to Top]
This is a summary of the changes to the source code that went into this
release that was generated using the diffstat utility.
.version | 2
ChangeLog | 93 +++
UPGRADE.txt | 10
addons/chan_mobile.c | 3
apps/app_confbridge.c | 4
apps/app_meetme.c | 821 +++++++++++++++++++---------------
apps/app_minivm.c | 1
apps/app_queue.c | 187 +++++--
asterisk-1.8.21.0-rc1-summary.html | 465 -------------------
asterisk-1.8.21.0-rc1-summary.txt | 576 -----------------------
asterisk-1.8.21.0-rc2-summary.html | 68 ++
asterisk-1.8.21.0-rc2-summary.txt | 102 ++++
autoconf/ast_check_pwlib.m4 | 2
bridges/bridge_softmix.c | 5
channels/chan_agent.c | 480 ++++++++-----------
channels/chan_dahdi.c | 7
channels/chan_iax2.c | 41 -
channels/chan_local.c | 43 +
channels/chan_misdn.c | 3
channels/chan_sip.c | 399 ++++++++++++----
channels/chan_skinny.c | 16
channels/chan_unistim.c | 22
channels/iax2.h | 8
channels/sip/include/reqresp_parser.h | 11
channels/sip/include/sip.h | 2
channels/sip/reqresp_parser.c | 53 ++
channels/sip/sdp_crypto.c | 28 -
codecs/codec_ilbc.c | 16
configure.ac | 4
contrib/init.d/rc.archlinux.asterisk | 2
contrib/init.d/rc.debian.asterisk | 2
contrib/init.d/rc.gentoo.asterisk | 2
contrib/init.d/rc.mandriva.asterisk | 2
contrib/init.d/rc.redhat.asterisk | 2
contrib/init.d/rc.slackware.asterisk | 2
contrib/init.d/rc.suse.asterisk | 2
contrib/scripts/install_prereq | 10
contrib/scripts/safe_asterisk | 2
funcs/func_devstate.c | 6
funcs/func_realtime.c | 17
include/asterisk/autoconfig.h.in | 16
include/asterisk/causes.h | 10
include/asterisk/channel.h | 13
include/asterisk/compat.h | 8
include/asterisk/devicestate.h | 16
include/asterisk/event_defs.h | 8
include/asterisk/rtp_engine.h | 2
include/asterisk/utils.h | 20
main/aoc.c | 5
main/asterisk.c | 7
main/astobj2.c | 13
main/cdr.c | 24
main/cel.c | 1
main/channel.c | 17
main/config.c | 11
main/data.c | 2
main/db.c | 65 ++
main/devicestate.c | 51 +-
main/dnsmgr.c | 23
main/event.c | 3
main/features.c | 7
main/file.c | 21
main/frame.c | 6
main/http.c | 35 +
main/image.c | 6
main/indications.c | 15
main/loader.c | 28 -
main/logger.c | 12
main/manager.c | 141 ++++-
main/pbx.c | 22
main/rtp_engine.c | 15
main/strcompat.c | 16
main/stun.c | 6
main/taskprocessor.c | 2
main/timing.c | 10
main/udptl.c | 14
main/utils.c | 63 ++
res/res_calendar.c | 8
res/res_calendar_icalendar.c | 5
res/res_clialiases.c | 5
res/res_fax.c | 3
res/res_jabber.c | 66 +-
res/res_rtp_asterisk.c | 8
res/res_srtp.c | 15
sounds/Makefile | 4
tests/test_xml_escape.c | 118 ++++
86 files changed, 2401 insertions(+), 2086 deletions(-)
----------------------------------------------------------------------

View File

@@ -1110,6 +1110,11 @@ static struct ao2_container *threadt;
static struct ao2_container *peers;
static struct ao2_container *peers_by_ip;
/*! \brief A bogus peer, to be used when authentication should fail */
static struct sip_peer *bogus_peer;
/*! \brief We can recognise the bogus peer by this invalid MD5 hash */
#define BOGUS_PEER_MD5SECRET "intentionally_invalid_md5_string"
/*! \brief The register list: Other SIP proxies we register with and receive calls from */
static struct ast_register_list {
ASTOBJ_CONTAINER_COMPONENTS(struct sip_registry);
@@ -1250,7 +1255,7 @@ static int transmit_response_with_unsupported(struct sip_pvt *p, const char *msg
static int transmit_response_with_auth(struct sip_pvt *p, const char *msg, const struct sip_request *req, const char *rand, enum xmittype reliable, const char *header, int stale);
static int transmit_provisional_response(struct sip_pvt *p, const char *msg, const struct sip_request *req, int with_sdp);
static int transmit_response_with_allow(struct sip_pvt *p, const char *msg, const struct sip_request *req, enum xmittype reliable);
static void transmit_fake_auth_response(struct sip_pvt *p, int sipmethod, struct sip_request *req, enum xmittype reliable);
static void transmit_fake_auth_response(struct sip_pvt *p, struct sip_request *req, enum xmittype reliable);
static int transmit_request(struct sip_pvt *p, int sipmethod, uint32_t seqno, enum xmittype reliable, int newbranch);
static int transmit_request_with_auth(struct sip_pvt *p, int sipmethod, uint32_t seqno, enum xmittype reliable, int newbranch);
static int transmit_publish(struct sip_epa_entry *epa_entry, enum sip_publish_type publish_type, const char * const explicit_uri);
@@ -14667,7 +14672,9 @@ static enum parse_register_result parse_register_contact(struct sip_pvt *pvt, st
ast_verbose(VERBOSE_PREFIX_3 "Registered SIP '%s' at %s\n", peer->name,
ast_sockaddr_stringify(&peer->addr));
}
sip_pvt_unlock(pvt);
sip_poke_peer(peer, 0);
sip_pvt_lock(pvt);
register_peer_exten(peer, 1);
/* Save User agent */
@@ -14854,6 +14861,7 @@ static enum check_auth_result check_auth(struct sip_pvt *p, struct sip_request *
char a1_hash[256];
char resp_hash[256]="";
char *c;
int is_bogus_peer = 0;
int wrongnonce = FALSE;
int good_response;
const char *usednonce = p->randdata;
@@ -14948,8 +14956,14 @@ static enum check_auth_result check_auth(struct sip_pvt *p, struct sip_request *
}
}
/* We cannot rely on the bogus_peer having a bad md5 value. Someone could
* use it to construct valid auth. */
if (md5secret && strcmp(md5secret, BOGUS_PEER_MD5SECRET) == 0) {
is_bogus_peer = 1;
}
/* Verify that digest username matches the username we auth as */
if (strcmp(username, keys[K_USER].s)) {
if (strcmp(username, keys[K_USER].s) && !is_bogus_peer) {
ast_log(LOG_WARNING, "username mismatch, have <%s>, digest has <%s>\n",
username, keys[K_USER].s);
/* Oops, we're trying something here */
@@ -14988,7 +15002,8 @@ static enum check_auth_result check_auth(struct sip_pvt *p, struct sip_request *
}
good_response = keys[K_RESP].s &&
!strncasecmp(keys[K_RESP].s, resp_hash, strlen(resp_hash));
!strncasecmp(keys[K_RESP].s, resp_hash, strlen(resp_hash)) &&
!is_bogus_peer; /* lastly, check that the peer isn't the fake peer */
if (wrongnonce) {
if (good_response) {
if (sipdebug)
@@ -15132,7 +15147,7 @@ static int cb_extensionstate(char *context, char* exten, int state, void *data)
/*! \brief Send a fake 401 Unauthorized response when the administrator
wants to hide the names of local devices from fishers
*/
static void transmit_fake_auth_response(struct sip_pvt *p, int sipmethod, struct sip_request *req, enum xmittype reliable)
static void transmit_fake_auth_response(struct sip_pvt *p, struct sip_request *req, enum xmittype reliable)
{
/* We have to emulate EXACTLY what we'd get with a good peer
* and a bad password, or else we leak information. */
@@ -15171,13 +15186,13 @@ static void transmit_fake_auth_response(struct sip_pvt *p, int sipmethod, struct
}
if (!(buf = ast_str_thread_get(&check_auth_buf, CHECK_AUTH_BUF_INITLEN))) {
transmit_response(p, "403 Forbidden (Bad auth)", &p->initreq);
__transmit_response(p, "403 Forbidden", &p->initreq, reliable);
return;
}
/* Make a copy of the response and parse it */
if (ast_str_set(&buf, 0, "%s", authtoken) == AST_DYNSTR_BUILD_FAILED) {
transmit_response(p, "403 Forbidden (Bad auth)", &p->initreq);
__transmit_response(p, "403 Forbidden", &p->initreq, reliable);
return;
}
@@ -15215,7 +15230,7 @@ static void transmit_fake_auth_response(struct sip_pvt *p, int sipmethod, struct
/* Schedule auto destroy in 32 seconds */
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
} else {
transmit_response(p, "403 Forbidden (Bad auth)", &p->initreq);
__transmit_response(p, "403 Forbidden", &p->initreq, reliable);
}
}
@@ -15325,7 +15340,7 @@ static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sock
if (!AST_LIST_EMPTY(&domain_list)) {
if (!check_sip_domain(domain, NULL, 0)) {
if (sip_cfg.alwaysauthreject) {
transmit_fake_auth_response(p, SIP_REGISTER, &p->initreq, XMIT_UNRELIABLE);
transmit_fake_auth_response(p, &p->initreq, XMIT_UNRELIABLE);
} else {
transmit_response(p, "404 Not found (unknown domain)", &p->initreq);
}
@@ -15352,6 +15367,13 @@ static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sock
}
peer = find_peer(name, NULL, TRUE, FINDPEERS, FALSE, 0);
/* If we don't want username disclosure, use the bogus_peer when a user
* is not found. */
if (!peer && sip_cfg.alwaysauthreject && !sip_cfg.autocreatepeer) {
peer = bogus_peer;
ref_peer(peer, "register_verify: ref the bogus_peer");
}
if (!(peer && ast_apply_ha(peer->ha, addr))) {
/* Peer fails ACL check */
if (peer) {
@@ -15427,7 +15449,7 @@ static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sock
switch (parse_register_contact(p, peer, req)) {
case PARSE_REGISTER_DENIED:
ast_log(LOG_WARNING, "Registration denied because of contact ACL\n");
transmit_response_with_date(p, "403 Forbidden (ACL)", req);
transmit_response_with_date(p, "403 Forbidden", req);
res = 0;
break;
case PARSE_REGISTER_FAILED:
@@ -15455,7 +15477,9 @@ static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sock
}
if (!res) {
if (send_mwi) {
sip_pvt_unlock(p);
sip_send_mwi_to_peer(peer, 0);
sip_pvt_lock(p);
} else {
update_peer_lastmsgssent(peer, -1, 0);
}
@@ -15465,7 +15489,7 @@ static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sock
switch (res) {
case AUTH_SECRET_FAILED:
/* Wrong password in authentication. Go away, don't try again until you fixed it */
transmit_response(p, "403 Forbidden (Bad auth)", &p->initreq);
transmit_response(p, "403 Forbidden", &p->initreq);
if (global_authfailureevents) {
const char *peer_addr = ast_strdupa(ast_sockaddr_stringify_addr(addr));
const char *peer_port = ast_strdupa(ast_sockaddr_stringify_port(addr));
@@ -15488,7 +15512,7 @@ static enum check_auth_result register_verify(struct sip_pvt *p, struct ast_sock
case AUTH_PEER_NOT_DYNAMIC:
case AUTH_ACL_FAILED:
if (sip_cfg.alwaysauthreject) {
transmit_fake_auth_response(p, SIP_REGISTER, &p->initreq, XMIT_UNRELIABLE);
transmit_fake_auth_response(p, &p->initreq, XMIT_UNRELIABLE);
if (global_authfailureevents) {
const char *peer_addr = ast_strdupa(ast_sockaddr_stringify_addr(addr));
const char *peer_port = ast_strdupa(ast_sockaddr_stringify_port(addr));
@@ -16495,7 +16519,19 @@ static enum check_auth_result check_peer_ok(struct sip_pvt *p, char *of,
ast_verbose("No matching peer for '%s' from '%s'\n",
of, ast_sockaddr_stringify(&p->recv));
}
return AUTH_DONT_KNOW;
/* If you don't mind, we can return 404s for devices that do
* not exist: username disclosure. If we allow guests, there
* is no way around that. */
if (sip_cfg.allowguest || !sip_cfg.alwaysauthreject) {
return AUTH_DONT_KNOW;
}
/* If you do mind, we use a peer that will never authenticate.
* This ensures that we follow the same code path as regular
* auth: less chance for username disclosure. */
peer = bogus_peer;
ref_peer(peer, "ref_peer: check_peer_ok: must ref bogus_peer so unreffing it does not fail");
}
if (!ast_apply_ha(peer->ha, addr)) {
@@ -16503,9 +16539,10 @@ static enum check_auth_result check_peer_ok(struct sip_pvt *p, char *of,
unref_peer(peer, "unref_peer: check_peer_ok: from find_peer call, early return of AUTH_ACL_FAILED");
return AUTH_ACL_FAILED;
}
if (debug)
if (debug && peer != bogus_peer) {
ast_verbose("Found peer '%s' for '%s' from %s\n",
peer->name, of, ast_sockaddr_stringify(&p->recv));
}
/* XXX what about p->prefs = peer->prefs; ? */
/* Set Frame packetization */
@@ -16774,8 +16811,6 @@ static enum check_auth_result check_user_full(struct sip_pvt *p, struct sip_requ
} else {
res = AUTH_RTP_FAILED;
}
} else if (sip_cfg.alwaysauthreject) {
res = AUTH_FAKE_AUTH; /* reject with fake authorization request */
} else {
res = AUTH_SECRET_FAILED; /* we don't want any guests, authentication will fail */
}
@@ -22555,13 +22590,8 @@ static int handle_request_options(struct sip_pvt *p, struct sip_request *req, st
return 0;
}
if (res < 0) { /* Something failed in authentication */
if (res == AUTH_FAKE_AUTH) {
ast_log(LOG_NOTICE, "Sending fake auth rejection for device %s\n", get_header(req, "From"));
transmit_fake_auth_response(p, SIP_OPTIONS, req, XMIT_UNRELIABLE);
} else {
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response(p, "403 Forbidden", req);
}
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response(p, "403 Forbidden", req);
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
return 0;
}
@@ -23220,13 +23250,8 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
goto request_invite_cleanup;
}
if (res < 0) { /* Something failed in authentication */
if (res == AUTH_FAKE_AUTH) {
ast_log(LOG_NOTICE, "Sending fake auth rejection for device %s\n", get_header(req, "From"));
transmit_fake_auth_response(p, SIP_INVITE, req, XMIT_RELIABLE);
} else {
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response_reliable(p, "403 Forbidden", req);
}
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response_reliable(p, "403 Forbidden", req);
p->invitestate = INV_COMPLETED;
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
res = 0;
@@ -25048,18 +25073,13 @@ static int handle_request_publish(struct sip_pvt *p, struct sip_request *req, st
return -1;
}
auth_result = check_user(p, req, SIP_PUBLISH, uri, XMIT_RELIABLE, addr);
auth_result = check_user(p, req, SIP_PUBLISH, uri, XMIT_UNRELIABLE, addr);
if (auth_result == AUTH_CHALLENGE_SENT) {
p->lastinvite = seqno;
return 0;
} else if (auth_result < 0) {
if (auth_result == AUTH_FAKE_AUTH) {
ast_log(LOG_NOTICE, "Sending fake auth rejection for device %s\n", get_header(req, "From"));
transmit_fake_auth_response(p, SIP_INVITE, req, XMIT_RELIABLE);
} else {
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response_reliable(p, "403 Forbidden", req);
}
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response(p, "403 Forbidden", req);
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
ast_string_field_set(p, theirtag, NULL);
return 0;
@@ -25272,19 +25292,14 @@ static int handle_request_subscribe(struct sip_pvt *p, struct sip_request *req,
* use if !req->ignore, because then we'll end up sending
* a 200 OK if someone retransmits without sending auth */
if (p->subscribed == NONE || resubscribe) {
res = check_user_full(p, req, SIP_SUBSCRIBE, e, 0, addr, &authpeer);
res = check_user_full(p, req, SIP_SUBSCRIBE, e, XMIT_UNRELIABLE, addr, &authpeer);
/* if an authentication response was sent, we are done here */
if (res == AUTH_CHALLENGE_SENT) /* authpeer = NULL here */
return 0;
if (res != AUTH_SUCCESSFUL) {
if (res == AUTH_FAKE_AUTH) {
ast_log(LOG_NOTICE, "Sending fake auth rejection for device %s\n", get_header(req, "From"));
transmit_fake_auth_response(p, SIP_SUBSCRIBE, req, XMIT_UNRELIABLE);
} else {
ast_log(LOG_NOTICE, "Failed to authenticate device %s for SUBSCRIBE\n", get_header(req, "From"));
transmit_response_reliable(p, "403 Forbidden", req);
}
ast_log(LOG_NOTICE, "Failed to authenticate device %s\n", get_header(req, "From"));
transmit_response(p, "403 Forbidden", req);
pvt_set_needdestroy(p, "authentication failed");
return 0;
@@ -26932,6 +26947,9 @@ static int sip_poke_noanswer(const void *data)
\note This is done with 60 seconds between each ping,
unless forced by cli or manager. If peer is unreachable,
we check every 10th second by default.
\note Do *not* hold a pvt lock while calling this function.
This function calls sip_alloc, which can cause a deadlock
if another sip_pvt is held.
*/
static int sip_poke_peer(struct sip_peer *peer, int force)
{
@@ -30417,6 +30435,7 @@ static int sip_do_reload(enum channelreloadreason reason)
/*! \brief Force reload of module from cli */
static char *sip_reload(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
static struct sip_peer *tmp_peer, *new_peer;
switch (cmd) {
case CLI_INIT:
@@ -30439,6 +30458,18 @@ static char *sip_reload(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a
ast_mutex_unlock(&sip_reload_lock);
restart_monitor();
tmp_peer = bogus_peer;
/* Create new bogus peer possibly with new global settings. */
if ((new_peer = temp_peer("(bogus_peer)"))) {
ast_string_field_set(new_peer, md5secret, BOGUS_PEER_MD5SECRET);
ast_clear_flag(&new_peer->flags[0], SIP_INSECURE);
bogus_peer = new_peer;
ao2_t_ref(tmp_peer, -1, "unref the old bogus_peer during reload");
} else {
ast_log(LOG_ERROR, "Could not update the fake authentication peer.\n");
/* You probably have bigger (memory?) issues to worry about though.. */
}
return CLI_SUCCESS;
}
@@ -31622,6 +31653,17 @@ static int load_module(void)
return AST_MODULE_LOAD_DECLINE;
}
/* Initialize bogus peer. Can be done first after reload_config() */
if (!(bogus_peer = temp_peer("(bogus_peer)"))) {
ast_log(LOG_ERROR, "Unable to create bogus_peer for authentication\n");
io_context_destroy(io);
sched_context_destroy(sched);
return AST_MODULE_LOAD_FAILURE;
}
/* Make sure the auth will always fail. */
ast_string_field_set(bogus_peer, md5secret, BOGUS_PEER_MD5SECRET);
ast_clear_flag(&bogus_peer->flags[0], SIP_INSECURE);
/* Prepare the version that does not require DTMF BEGIN frames.
* We need to use tricks such as memcpy and casts because the variable
* has const fields.
@@ -31632,6 +31674,7 @@ static int load_module(void)
/* Make sure we can register our sip channel type */
if (ast_channel_register(&sip_tech)) {
ast_log(LOG_ERROR, "Unable to register channel type 'SIP'\n");
ao2_t_ref(bogus_peer, -1, "unref the bogus_peer");
io_context_destroy(io);
sched_context_destroy(sched);
return AST_MODULE_LOAD_FAILURE;
@@ -31873,6 +31916,8 @@ static int unload_module(void)
ast_debug(2, "TCP/TLS thread container did not become empty :(\n");
}
ao2_t_ref(bogus_peer, -1, "unref the bogus_peer");
ao2_t_ref(peers, -1, "unref the peers table");
ao2_t_ref(peers_by_ip, -1, "unref the peers_by_ip table");
ao2_t_ref(dialogs, -1, "unref the dialogs table");

View File

@@ -471,7 +471,6 @@ enum check_auth_result {
AUTH_SECRET_FAILED = -1,
AUTH_USERNAME_MISMATCH = -2,
AUTH_NOT_FOUND = -3, /*!< returned by register_verify */
AUTH_FAKE_AUTH = -4,
AUTH_UNKNOWN_DOMAIN = -5,
AUTH_PEER_NOT_DYNAMIC = -6,
AUTH_ACL_FAILED = -7,

View File

@@ -109,6 +109,8 @@ static const int BATCH_SCHEDULER_ONLY_DEFAULT = 0;
static int batchsafeshutdown;
static const int BATCH_SAFE_SHUTDOWN_DEFAULT = 1;
AST_MUTEX_DEFINE_STATIC(cdr_sched_lock);
AST_MUTEX_DEFINE_STATIC(cdr_batch_lock);
/* these are used to wake up the CDR thread when there's work to do */
@@ -1300,17 +1302,24 @@ static int submit_scheduled_batch(const void *data)
{
ast_cdr_submit_batch(0);
/* manually reschedule from this point in time */
ast_mutex_lock(&cdr_sched_lock);
cdr_sched = ast_sched_add(sched, batchtime * 1000, submit_scheduled_batch, NULL);
ast_mutex_unlock(&cdr_sched_lock);
/* returning zero so the scheduler does not automatically reschedule */
return 0;
}
/*! Do not hold the batch lock while calling this function */
static void submit_unscheduled_batch(void)
{
/* Prevent two deletes from happening at the same time */
ast_mutex_lock(&cdr_sched_lock);
/* this is okay since we are not being called from within the scheduler */
AST_SCHED_DEL(sched, cdr_sched);
/* schedule the submission to occur ASAP (1 ms) */
cdr_sched = ast_sched_add(sched, 1, submit_scheduled_batch, NULL);
ast_mutex_unlock(&cdr_sched_lock);
/* signal the do_cdr thread to wakeup early and do some work (that lazy thread ;) */
ast_mutex_lock(&cdr_pending_lock);
ast_cond_signal(&cdr_pending_cond);
@@ -1321,6 +1330,7 @@ void ast_cdr_detach(struct ast_cdr *cdr)
{
struct ast_cdr_batch_item *newtail;
int curr;
int submit_batch = 0;
if (!cdr)
return;
@@ -1367,10 +1377,14 @@ void ast_cdr_detach(struct ast_cdr *cdr)
/* if we have enough stuff to post, then do it */
if (curr >= (batchsize - 1)) {
submit_batch = 1;
}
ast_mutex_unlock(&cdr_batch_lock);
/* Don't call submit_unscheduled_batch with the cdr_batch_lock held */
if (submit_batch) {
submit_unscheduled_batch();
}
ast_mutex_unlock(&cdr_batch_lock);
}
static void *do_cdr(void *data)
@@ -1522,7 +1536,9 @@ static void do_reload(int reload)
}
/* don't run the next scheduled CDR posting while reloading */
ast_mutex_lock(&cdr_sched_lock);
AST_SCHED_DEL(sched, cdr_sched);
ast_mutex_unlock(&cdr_sched_lock);
if (config) {
if ((enabled_value = ast_variable_retrieve(config, "general", "enable"))) {
@@ -1565,7 +1581,9 @@ static void do_reload(int reload)
if (enabled && !batchmode) {
ast_log(LOG_NOTICE, "CDR simple logging enabled.\n");
} else if (enabled && batchmode) {
ast_mutex_lock(&cdr_sched_lock);
cdr_sched = ast_sched_add(sched, batchtime * 1000, submit_scheduled_batch, NULL);
ast_mutex_unlock(&cdr_sched_lock);
ast_log(LOG_NOTICE, "CDR batch mode logging enabled, first of either size %d or time %d seconds.\n", batchsize, batchtime);
} else {
ast_log(LOG_NOTICE, "CDR logging disabled, data will be lost.\n");
@@ -1577,7 +1595,9 @@ static void do_reload(int reload)
ast_cond_init(&cdr_pending_cond, NULL);
if (ast_pthread_create_background(&cdr_thread, NULL, do_cdr, NULL) < 0) {
ast_log(LOG_ERROR, "Unable to start CDR thread.\n");
ast_mutex_lock(&cdr_sched_lock);
AST_SCHED_DEL(sched, cdr_sched);
ast_mutex_unlock(&cdr_sched_lock);
} else {
ast_cli_register(&cli_submit);
ast_register_atexit(ast_cdr_engine_term);

View File

@@ -612,6 +612,8 @@ static void http_decode(char *s)
ast_uri_decode(s);
}
#define MAX_POST_CONTENT 1025
/*
* get post variables from client Request Entity-Body, if content type is
* application/x-www-form-urlencoded
@@ -644,6 +646,13 @@ struct ast_variable *ast_http_get_post_vars(
return NULL;
}
if (content_length > MAX_POST_CONTENT - 1) {
ast_log(LOG_WARNING, "Excessively long HTTP content. %d is greater than our max of %d\n",
content_length, MAX_POST_CONTENT);
ast_http_send(ser, AST_HTTP_POST, 413, "Request Entity Too Large", NULL, NULL, 0, 0);
return NULL;
}
buf = ast_malloc(content_length + 1);
if (!buf) {
return NULL;

View File

@@ -1273,6 +1273,7 @@ enum ast_bridge_result ast_rtp_instance_bridge(struct ast_channel *c0, struct as
enum ast_rtp_dtmf_mode dmode;
format_t codec0 = 0, codec1 = 0;
int unlock_chans = 1;
int read_ptime0, read_ptime1, write_ptime0, write_ptime1;
/* Lock both channels so we can look for the glue that binds them together */
ast_channel_lock(c0);
@@ -1352,6 +1353,18 @@ enum ast_bridge_result ast_rtp_instance_bridge(struct ast_channel *c0, struct as
goto done;
}
read_ptime0 = (ast_codec_pref_getsize(&instance0->codecs.pref, c0->rawreadformat)).cur_ms;
read_ptime1 = (ast_codec_pref_getsize(&instance1->codecs.pref, c1->rawreadformat)).cur_ms;
write_ptime0 = (ast_codec_pref_getsize(&instance0->codecs.pref, c0->rawwriteformat)).cur_ms;
write_ptime1 = (ast_codec_pref_getsize(&instance1->codecs.pref, c1->rawwriteformat)).cur_ms;
if (read_ptime0 != write_ptime1 || read_ptime1 != write_ptime0) {
ast_debug(1, "Packetization differs between RTP streams (%d != %d or %d != %d). Cannot native bridge in RTP\n",
read_ptime0, write_ptime1, read_ptime1, write_ptime0);
res = AST_BRIDGE_FAILED_NOWARN;
goto done;
}
instance0->glue = glue0;
instance1->glue = glue1;
instance0->chan = c0;

View File

@@ -366,7 +366,7 @@ static int __rtp_recvfrom(struct ast_rtp_instance *instance, void *buf, size_t s
return len;
}
if ((*in > 1) && res_srtp && srtp && res_srtp->unprotect(srtp, buf, &len, rtcp) < 0) {
if ((*in & 0xC0) && res_srtp && srtp && res_srtp->unprotect(srtp, buf, &len, rtcp) < 0) {
return -1;
}