aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2010-12-02Importing release summary for 1.4.38 release.v1.4.38lmadsen2-0/+839
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38@297398 f38db490-d61c-443f-a65b-d21fe96a405b
2010-12-02Remove old summary files, update .version and ChangeLog files.lmadsen4-840/+5
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38@297395 f38db490-d61c-443f-a65b-d21fe96a405b
2010-12-02Create Asterisk 1.4.38 from 1.4.38-rc1lmadsen0-0/+0
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38@297394 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Use autotagged externalsv1.4.38-rc1lmadsen0-0/+0
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295105 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Importing release summary for 1.4.38-rc1 release.lmadsen2-0/+839
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295104 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Importing files for 1.4.38-rc1 release.lmadsen3-0/+30589
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295103 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Creating tag for the release of asterisk-1.4.38-rc1lmadsen6-30440/+1
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295096 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Err, oops. Made it const to verify that it wasn't altered, but forgot to ↵tilghman1-1/+1
revert before commit. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@295031 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Use autotagged externalslmadsen0-0/+0
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295030 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Importing release summary for 1.4.38-rc1 release.lmadsen2-0/+287
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295029 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Importing files for 1.4.38-rc1 release.lmadsen3-0/+30152
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295028 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Creating tag for the release of asterisk-1.4.38-rc1lmadsen0-0/+0
git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.4.38-rc1@295027 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-15Create test verifying results of expression parsertilghman1-0/+191
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@295026 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-12Fix regression causing abort in voicemail after opening a mailbox with no mesgs.jpeeler1-1/+2
In order to be more safe, some error handling code was changed to respect more error conditions including the potential memory allocation failure for deleted and heard message tracking introduced in 293004. However, last_message_index returns -1 for zero messages (perhaps as expected) and was triggering the stricter error checking. Because last_message_index is only called directly in one place, just return 0 from open_mailbox (for file based storage) when no messages are detected unless a real error has occurred. (closes issue #18240) Reported by: leobrown Patches: bug18240.1-6-2.diff.txt uploaded by alecdavis (license 585) Tested by: pabelanger git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294903 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-12Asterisk is getting a "No D-channels available!" warning message every 4 ↵rmudgett1-2/+11
seconds. Asterisk is just whining too much with this message: "No D-channels available! Using Primary channel XXX as D-channel anyway!". Filtered the message so it only comes out once if there is no D channel available without an intervening D channel available period. (closes issue #17270) Reported by: jmls git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294821 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-11I didn't mean to merge this, sorryjpeeler1-3/+0
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294739 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-11Fix problem with qualify option packets for realtime peers never stopping.jpeeler1-1/+24
The option packets not only never stopped, but if a realtime peer was not in the peer list multiple options dialogs could accumulate over time. This scenario has the potential to progress to the point of saturating a link just from options packets. The fix was to ensure that the poke scheduler checks to see if a peer is in the peer list before continuing to poke. The reason a peer must be in the peer list to be able to properly manage an options dialog is because otherwise the call pointer is lost when the peer is regenerated from the database, which is how existing qualify dialogs are detected. (closes issue #16382) Reported by: lftsy Patches: bug16382-3.patch uploaded by jpeeler (license 325) Tested by: zerohalo git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294688 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-11One small addition to 294384 found while very carefully merging to 1.6.jpeeler1-0/+6
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294641 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-09Fix a deadlock in device state change processing.jpeeler3-107/+193
Copied from some notes from the original author (Russell): Deadlock scenario: Thread 1: device state change thread Holds - rdlock on contexts Holds - hints lock Waiting on channels container lock Thread 2: SIP monitor thread Holds the "iflock" Holds a sip_pvt lock Holds channel container lock Waiting for a channel lock Thread 3: A channel thread (chan_local in this case) Holds 2 channel locks acquired within app_dial Holds a 3rd channel lock it got inside of chan_local Holds a local_pvt lock Waiting on a rdlock of the contexts lock A bunch of other threads waiting on a wrlock of the contexts lock To address this deadlock, some locking order rules must be put in place and enforced. Existing relevant rules: 1) channel lock before a pvt lock 2) contexts lock before hints lock 3) channels container before a channel What's missing is some enforcement of the order when you involve more than any two. To fix this problem, I put in some code that ensures that (at least in the code paths involved in this bug) the locks in (3) come before the locks in (2). To change the operation of thread 1 to comply, I converted the storage of hints to an astobj2 container. This allows processing of hints without holding the hints container lock. So, in the code path that led to thread 1's state, it no longer holds either the contexts or hints lock while it attempts to lock the channels container. (closes issue #18165) Reported by: antonio ABE-2583 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294384 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-08Modify our handling of 491 responses to drop any pending reinvite retry ↵mnicholson1-0/+8
scheduler entries if we get a new 491. This prevents a scheduler entry from leaking if we receive a 491 response when one is pending. If a scheduler entry leaks, the pvt it is associated my get destroyed before the scheduler entry fires, and then memory corruption and crashes can occur when the scheduled reinvite attempts to access and modify the memory of the destroyed pvt. ABE-2543 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@294163 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-05codecs/codec_dahdi: Prevent "choppy" audio when receiving unexpected frame ↵sruffell1-4/+4
sizes. dahdi-linux 2.4.0 (specifically commit 9034) added the capability for the wctc4xxp to return more than a single packet of data in response to a read. However, when decoding packets, codec_dahdi was still assuming that the default number of samples was in each read. In other words, each packet your provider sent you, regardless of size, would result in 20 ms of decoded data (30 ms if decoding G723). If your provider was sending 60 ms packets then codec_dahdi would end up stripping 40 ms of data from each transcoded frame resulting in "choppy" audio. This would only affect systems where G729 packets are arriving in sizes greater than 20ms or G723 packets arriving in sizes greater than 30ms. DAHDI-744. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293968 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-04Fixes ringback tone on feature semi-attended transferdvossel1-0/+3
ABE-2168 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293922 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-03Party A in an analog 3-way call would continue to hear ringback after party ↵rmudgett1-12/+16
C answers. All parties are analog FXS ports. 1) A calls B. 2) A flash hooks to call C. 3) A flash hooks to bring C into 3-way call before C answers. (A and B hear ringback) 4) C answers 5) A continues to hear ringback during the 3-way call. (All parties can hear each other.) * Fixed use of wrong variable in dahdi_bridge() that stopped ringback on the wrong subchannel. * Made several debug messages have more information. A similar issue happens if B and C are SIP channels. B continues to hear ringback. For some reason this only affects v1.8 and trunk. * Don't start ringback on the real and 3-way subchannels when creating the 3-way conference. Removing this code is benign on v1.6.2 and earlier. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293805 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-02Add enabled/disabled information for rtautoclear sip show settings output.jpeeler1-1/+1
When setting to zero/"no", the numeric default was shown making it not obvious the disabled setting was respected. (closes issue #18123) Reported by: zerohalo git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293722 f38db490-d61c-443f-a65b-d21fe96a405b
2010-11-02Make warning message have more useful information in it.rmudgett1-2/+5
Change "Unable to get index, and nullok is not asserted" to "Unable to get index for '<channel-name>' on channel <number> (<function>(), line <number>)". git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293639 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-30Remove some more code that serves no purpose.rmudgett1-11/+0
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293416 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-30Remove some code that serves no purpose.rmudgett1-11/+0
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293339 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-28"!00" evaluated as false, which is incorrect. Fixing.tilghman3-242/+369
Reported (though the reporter did not understand he was reporting a bug) on the asterisk-users list: http://lists.digium.com/pipermail/asterisk-users/2010-October/255505.html git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293194 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-25Fix inprocess_container in voicemail to correctly restrict max messages.jpeeler1-40/+88
The comparison function logic was off, so the number of sessions for a given mailbox were not being incremented properly. This problem caused the maximum number of messages per folder to not be respected when simultaneously leaving multiple voicemails just below the threshold. These problems should be fixed by the above, but just in case: Fixed resequence_mailbox to rely on the actual number of detected number of files in a directory rather than just assuming only 10 messages more than the maximum had been left. Also if more messages than the maximum are deleted they are actually removed now. The second purpose of this commit should have been separated out probably, but is related to the above. Again, if the number of messages in a given voicemail folder exceeds the maximum set limit make sure to allocate enough space for the deleted and heard index tracking array. A few random fixes: There was a forgotten decrement of the inprocess count in imap_store_file. When using IMAP storage, do not look in the directory where file based storage messages may still reside and influence the message count. Ensure to use only the first format in sendmail. ABE-2516 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@293004 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-25This patch turns chan_local pvts into astobj2 objects.dvossel1-139/+167
chan_local does some dangerous things involving deadlock avoidance. tech_pvt functions like hangup and queue_frame are provided with a locked channel upon entry. Those functions are completely safe as long as you don't attempt to give up that channel lock, but that is impossible to guarantee due to the required deadlock avoidance necessary to lock both the tech_pvt and both channels involved. In the past, we have tried to account for this by doing things like setting a "glare" flag that indicates what function should destroy the pvt. This was used in local_hangup and local_queue_frame to decided who should destroy the pvt if they collided in separate threads. I have removed the need to do this by converting all chan_local tech_pvts to astobj2. This means we can ref a pvt before deadlock avoidance and not have to worry about that pvt possibly getting destroyed under us. It also cleans up where we destroy the tech_pvt. The only unlink from the tech_pvt container occurs in local_hangup now, which is where it should occur. Since there still may be thread collisions on some functions like local_hangup after deadlock avoidance, I have added some checks to detect those collisions and exit appropriately. I think this patch is going to solve quite a bit of weirdness we have had with local channels in the past. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@292866 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-21Record priv-recordintro as sln, not gsmpabelanger1-1/+1
This removes the gsm->sln step when transcoding priv-recordintro. (closes issue #18176) Reported by: pabelanger Patches: chan_sip.diff uploaded by pabelanger (license 224) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@292411 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-18Fix improper operator key acceptance and clean up temp recording files.jpeeler1-4/+13
This is a fix for when pressing the operator key after recording an unavailable, busy, name, or temporary message in mailbox options. The operator key should not be accepted here, but should be allowed during the message recording. If the operator key is pressed during ensure the file is saved or deleted as apporopriate. Also, ensure removal of temporary recorded files after an early hang up or when message acceptance confirmation times out. ABE-2518 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@292223 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-18Add support for the new English (Australian Accent) sound files.lmadsen2-5/+26
(closes issue #17426) Reported by: camsown Patches: core-sounds-en_AU.txt uploaded by camsown (license 1050) add_AU_sounds.patch.txt uploaded by lmadsen (license 10) Tested by: camsown, lmadsen, jtodd, qwell git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@292222 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-15Clean up formatting.pabelanger1-13/+11
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291938 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-15Don't access o->next after freeing o on unloadtwilson1-3/+6
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291862 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-13Deadlock between dahdi_exception() and dahdi_indicate().rmudgett1-80/+222
There is a deadlock between dahdi_exception() and dahdi_indicate() for analog ports. The call-waiting and three-way-calling feature can experience deadlock if these features are trying to do something and an event from the bridged channel happens at the same time. Deadlock avoidance code added to obtain necessary channel locks before attemting an operation with call-waiting and three-way-calling. (closes issue #16847) Reported by: shin-shoryuken Patches: issue_16847_v1.4.patch uploaded by rmudgett (license 664) issue_16847_v1.6.2.patch uploaded by rmudgett (license 664) issue_16847_v1.8_v2.patch uploaded by rmudgett (license 664) Tested by: alecdavis, rmudgett Review: https://reviewboard.asterisk.org/r/971/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291643 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-13Don't ignore frames that have been queued when softhangup'dtwilson1-1/+12
When an outgoing call is answered and hung up by the far end *very* quickly, we may not read any frames and therefor end up with a call that displays the wrong disposition/DIALSTATUS. The reason is because ast_queue_hangup() immediately sets the _softhangup flag on the channel and then queues the HANGUP control frame, but __ast_read refuses to read any frames if ast_check_hangup() indicates that a hangup request has been made (which it will if _softhangup is set). So, we end up losing control frames. This change makes __ast_read continue to read frames even if a soft hangup has been requested. It queues a hangup frame to make sure that __ast_read() will still eventually return NULL. Much thanks to David Vossel for all of the reviews, discussion, and help! (closes issue #16946) Reported by: davidw Review: https://reviewboard.asterisk.org/r/740/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291577 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-13Lock pvt so pvt->owner can't disappear when queueing up a frame.russell1-1/+16
This fixes a crash due to a hangup race condition. ABE-2601 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291392 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-12Oops, incorrect range (although unallocated at ARIN)tilghman1-2/+2
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291263 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-11Add missing unlock to an exception condition in reload_config().rmudgett1-3/+8
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@291109 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-08Ensure editline cleanup occurs when Ctrl-C is pressed at control console.jpeeler1-4/+5
A recent change was made to avoid a race condition on shutdown which only called the end functions from the console thread. However, when pressing Ctrl-C the quit handler is called from the signal handler thread. (closes issue #17698) Reported by: jmls git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@290862 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-07Allow PRI to build properly when using --with-pri.qwell3-21256/+6516
Use the directories found for the parent when using lib dependencies. (closes issue #17314) Reported by: tzafrir Patches: 17314-withdeps.diff uploaded by qwell (license 4) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@290750 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-05Fix a crash by ensuring that we don't alter memory after it's freed.tilghman1-3/+6
(closes issue #17387) Reported by: jmls Patches: 20100726__issue17387.diff.txt uploaded by tilghman (license 14) Tested by: jmls git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@290392 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-05Merged revision 258974 fromrmudgett1-1/+1
https://origsvn.digium.com/svn/asterisk/trunk .......... r258974 | diruggles | 2010-04-26 14:05:47 -0500 (Mon, 26 Apr 2010) | 4 lines Line 24 missed in compatibility fix in revision 233577 added a "fun:" prefix line 24 .......... git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@290323 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-04Fixing Mac OS X auto-builder.tilghman2-15/+15
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@290177 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-03Automatically re-run configure test for menuselect, when the relevant ↵tilghman2-5/+165
makeopts settings change. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@290100 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-02Add documentation for undocumented option to AMI action originateoej1-0/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@289949 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-02When forwarding a message, a prepend means that the filesystem will always ↵tilghman1-12/+6
have a better copy. (closes issue #17803) Reported by: dpetersen Patches: 20100923__issue17803.diff.txt uploaded by tilghman (license 14) Tested by: dpetersen git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@289873 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-01Change RFC2833 DTMF event duration on end to report actual elapsed time.jpeeler3-2/+17
The scenario here is with a non P2P early media session. The reported time length of DTMF presses are coming up short when sending to the remote side. Currently the event duration is a running total that is incremented when sending continuation packets. These continuation packets are only triggered upon incoming media from the remote side, which means that the running total probably is not going to end up matching the actual length of time Asterisk received DTMF. This patch changes the end event duration to be lengthened if it is detected that the end event is going to come up short. Review: https://reviewboard.asterisk.org/r/957/ ABE-2476 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@289797 f38db490-d61c-443f-a65b-d21fe96a405b
2010-10-01Disable debugging by defaultpabelanger2-17/+15
and reformat .config file. Review: https://reviewboard.asterisk.org/r/929/ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@289703 f38db490-d61c-443f-a65b-d21fe96a405b