aboutsummaryrefslogtreecommitdiffstats
path: root/apps
AgeCommit message (Collapse)AuthorFilesLines
2008-08-20Fix a crash in the ChanSpy application. The issue here is that if you callrussell1-2/+2
ChanSpy and specify a spy group, and sit in the application long enough looping through the channel list, you will eventually run out of stack space and the application with exit with a seg fault. The backtrace was always inside of a harmless snprintf() call, so it was tricky to track down. However, it turned out that the call to snprintf() was just the biggest stack consumer in this code path, so it would always be the first one to hit the boundary. (closes issue #13338) Reported by: ruddy git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@139213 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-19Add a lock and unlock prior to the destruction of the chanspy_dsmmichelson1-0/+2
lock to ensure that no other threads still have it locked. While this should not happen under normal circumstances, it appears that if the spyer and spyee hang up at nearly the same time, the following may occur. 1. ast_channel_free is called on the spyee's channel. 2. The chanspy datastore is removed from the spyee's channel in ast_channel_free. 3. In the spyer's thread, the spyer attempts to remove and destroy the datastore from the spyee channel, but the datastore has already been removed in step 2, so the spyer continues in the code. 4. The spyee's thread continues and calls the datastore's destroy callback, chanspy_ds_destroy. This involves locking the chanspy_ds. 5. Now the spyer attempts to destroy the chanspy_ds lock. The problem is that in step 4, the spyee has locked this lock, meaning that the spyer is attempting to destroy a lock which is currently locked by another thread. The backtrace provided in issue #12969 supports the idea that this is possible (and has even occurred). This commit does not close the issue, but should help in preventing one type of crash associated with the use of app_chanspy. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@138886 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-18Change the inequalities used in app_queue with regardsmmichelson1-9/+9
to timeouts from being strict to non-strict for more accuracy. (closes issue #13239) Reported by: atis Patches: app_queue_timeouts_v2.patch uploaded by atis (license 242) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@138685 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-13remove some more chan_zap referenceskpfleming1-4/+4
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@137529 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-11convert this module to be able to handle DAHDI or Zaptel (reported on ↵kpfleming1-15/+22
asterisk-users, don't know how this got missed before) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@137188 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-07Update persistent state on all exit conditions.tilghman1-0/+2
(closes issue #12916) Reported by: sgenyuk Patches: app_queue.patch.txt uploaded by neutrino88 (license 297) Tested by: sgenyuk, aragon git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@136488 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-07work around a bug in gcc-4.2.3 that incorrectly ignores the casting away of ↵kpfleming1-2/+2
'const' for pointers when the developer knows it is safe to do so git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@136458 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-06We only need to unregister the QueueStatus managermmichelson1-1/+0
command once on an unload git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@136238 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-06Revert inadvertent changes to app_skel that occurred whenmmichelson1-14/+15
I was testing for a memory leak git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@135847 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-06Merging the issue11259 branch.mmichelson1-15/+14
The purpose of this branch was to take into account "burps" which could cause jitterbuffers to misbehave. One such example is if the L option to Dial() were used to inject audio into a bridged conversation at regular intervals. Since the audio here was not passed through the jitterbuffer, it would cause a gap in the jitterbuffer's timestamps which would cause a frames to be dropped for a brief period. Now ast_generic_bridge will empty and reset the jitterbuffer each time it is called. This causes injected audio to be handled properly. ast_generic_bridge also will empty and reset the jitterbuffer if it receives an AST_CONTROL_SRCUPDATE frame since the change in audio source could negatively affect the jitterbuffer. All of this was made possible by adding a new public API call to the abstract_jb called ast_jb_empty_and_reset. (closes issue #11259) Reported by: plack Tested by: putnopvut git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@135841 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-05(closes issue #12982)murf1-2/+7
Reported by: bcnit Tested by: murf I discovered that also, in the previous bug fixes and changes, the cdr.conf 'unanswered' option is not being obeyed, so I fixed this. And, yes, there are two 'answer' times involved in this scenario, and I would agree with you, that the first answer time is the time that should appear in the CDR. (the second 'answer' time is the time that the bridge was begun). I made the necessary adjustments, recording the first answer time into the peer cdr, and then using that to override the bridge cdr's value. To get the 'unanswered' CDRs to appear, I purposely output them, using the dial cmd to mark them as DIALED (with a new flag), and outputting them if they bear that flag, and you are in the right mode. I also corrected one small mention of the Zap device to equally consider the dahdi device. I heavily tested 10-sec-wait macros in dial, and without the macro call; I tested hangups while the macro was running vs. letting the macro complete and the bridge form. Looks OK. Removed all the instrumentation and debug. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@135799 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-04Memory leak on unloadtilghman1-10/+21
(closes issue #13231) Reported by: eliel Patches: app_voicemail.leak.patch uploaded by eliel (license 64) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@135479 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-01make app_ices compile on OpenBSD.mvanbaak1-6/+6
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@135058 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-31Get app_ices working againrussell1-12/+22
(closes issue #12981) Reported by: dlogan Patches: 20080709__app_ices_v2_update_trunk.diff uploaded by bbryant (license 36) 20080709__app_ices_v2_update_14.diff uploaded by bbryant (license 36) Tested by: bbryant git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134915 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-31Add more timeout checks into app_queue, specificallymmichelson1-1/+43
targeting areas where an unknown and potentially long time has just elapsed. Also added a check to try_calling() to return early if the timeout has elapsed instead of potentially setting a negative timeout for the call (thus making it have *no* timeout at all). (closes issue #13186) Reported by: miquel_cabrespina Patches: 13186.diff uploaded by putnopvut (license 60) Tested by: miquel_cabrespina git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134758 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-29build against the now-typedef-free dahdi/user.hkpfleming5-12/+10
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134254 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-29Merging the imap_consistency branch.mmichelson1-1553/+1223
The main aim of this branch was to make the IMAP code function in the same manner as the ODBC code does, eliminating the need for so many IMAP-specific code chunks. The focal point of all of this work was to make the various macros (e.g. RETRIEVE, DISPOSE) functionally equivalent. While doing the above work, I also fixed a few bugs that I came across in my testing. Among these were 1. Fixed message forwarding. This was completely broken when using IMAP. 2. Fixed the inability to save new messages as old and vice versa. 3. Fixed the "delete" options in voicemail.conf when using IMAP storage. Even though a few bugs were fixed and the code is a lot more consistent, the one thing that was *not* improved in this branch was performance. The merge of this to trunk may not come immediately due to the amount of work it will probably involve. (closes issue #12764) Reported by: balsamcn git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134223 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-28Detect when sox fails to raise the volume, because sox can't read the file.tilghman1-4/+11
(closes issue #12939) Reported by: rickbradley Patches: 20080728__bug12939.diff.txt uploaded by Corydon76 (license 14) Tested by: rickbradley git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134161 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-25Remove unnecessary mmap flagtilghman1-1/+1
(Closes issue #13161) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133709 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-23make some more changes to the dahdi/zap channel name support stuff to ensure ↵kpfleming3-12/+9
allthe globals are 'const', and clean up mmichelson's changes to app_chanspy to simplify the code git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133226 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-23As suggested by seanbright, the PSEUDO_CHAN_LEN in mmichelson1-6/+9
app_chanspy should be set at load time, not at compile time, since dahdi_chan_name is determined at load time. Also changed the next_unique_id_to_use to have the static qualifier. Also added the dahdi_chan_name_len variable so that strlen(dahdi_chan_name) isn't necessary. Thanks to seanbright for the suggestion. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133169 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-23Zap/pseudo is ten characters, but DAHDI/pseudo ismmichelson1-1/+10
twelve. The strncmp call in next_channel should account for this. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133104 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-23Update the "last" channel in next_channel in app_chanspy sommichelson1-0/+1
that the same pseudo channel isn't constantly returned. related to issue #13124 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133101 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-22fix up namespace pollution for dahdi_chan_mode enumkpfleming3-5/+5
correct registration of AMI actions in chan_dahdi; in zap-only mode, only register the Zap flavors of the actions (and use Zap prefixes for headers and acks), but in dahdi+zap mode, register both Zap and DAHDI flavors of actions git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@132787 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-21Fix a bug where SENDTEXTSTATUS isn't set properly when it isn't bbryant1-0/+1
supported on a channel (yet _another_ useful patch by eliel). (issue #13081) Reported by: eliel Patches: app_sendtext1.4.c uploaded by eliel (license 64) Tested by: eliel git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@132507 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-16Move the init_queue call back to where it used to be (changedmmichelson1-1/+1
Sept 12 last year). It was moved then to prevent a memory leak. Since then, the same memory leak recurred and was fixed in a better way. Now it has been found that the placement of this init_queue call can cause problems if a realtime queue has values changed to an empty string. The problem is that the default value for that queue parameter would not be set. (closes issue #13084) Reported by: elbriga git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@131369 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-16Apparently, "thread safety" is important, whatevermmichelson1-3/+4
that means. :P (Thanks Russell!) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@131357 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-16Make absolutely certain that the transfer datastoremmichelson1-1/+9
is removed from the calling channel once the caller is finished in the queue. This could have weird con- sequences when dialing local queue members when multiple transfers occur on a single call. Also fixed a memory leak that would occur when an attended transfer occurred from a queue member. (closes issue #13047) Reported by: festr git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@131299 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-14Add a check to the CAN_EARLY_BRIDGE macro in app_dial tommichelson1-6/+7
be sure there are no audiohooks present on the channels involved. This fixed a one-way audio situation I had in my test setup. I couldn't find any open issues that suggested one-way audio with regards to mixmonitor (or other audiohook) usage, though. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@130792 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-11a whole pile of Zaptel/DAHDI compatibility work, with lots more to come... ↵kpfleming3-56/+121
this tree is not yet ready for users to be easily upgrading or switching, but it needs to be :-) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@130298 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-08Backport TCP-related timeouts to IMAP voicemail in 1.4mmichelson1-1/+32
since it should solve bugs people are experiencing. Specifically, there are times where communication with the IMAP server causes system calls to block forever. If this should happen when querying the mailbox so that chan_sip's do_monitor thread can send MWI to a phone, it means that SIP calls cannot be processed any more. The timeout options are outlined in doc/imapstorage.txt. Defaults for the timeouts are sixty seconds. (closes issue #12987) Reported by: mthomasslo git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@129158 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-08Cause SIP to return a 480 instead of a 404 when a sip peer exists, but is nottilghman1-0/+1
registered. (closes issue #12885) Reported by: ibc Patches: 20080701__bug12885__2.diff.txt uploaded by Corydon76 (license 14) Tested by: ibc git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@129149 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-08Check for non-NULL before stripping characters.tilghman1-3/+7
(closes issue #12954) Reported by: bfsworks Patches: 20080701__bug12954.diff.txt uploaded by Corydon76 (license 14) Tested by: deti git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@128856 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-07Stop using deprecated method, as requested by Kevin.tilghman1-54/+93
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@128812 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-03remove this, it has been moved to the main Makefilekpfleming1-5/+0
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@127895 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-01Add error message to failed open(2) calls inside the copy() function ofmmichelson1-2/+2
app_voicemail. This idea came as part of my work in helping to resolve issue #12764. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@127244 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-26Add the interface of a queue member to the output of the "queue show" commandmmichelson1-1/+4
so that it can easily be associated with a queue member's name. This helps so that the appropriate queue member can be removed or paused since the interface is required, not the member's name. (closes issue #12783) Reported by: davevg Patches: app_queue.diff uploaded by davevg (license 209) with small mod from me git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@125585 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-26Backport of attended transfer queue_log patch from trunk.mmichelson1-38/+132
This patch allows for attended transfers to be logged in the queue_log the same way that blind transfers have always been. It was decided by popular opinion on the asterisk-dev mailing list that this should be backported to 1.4. Thanks to everyone who gave an opinion. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@125530 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-26Prior to this patch, the "queue show" command used cachedmmichelson1-1/+11
information for realtime queues instead of giving up-to-date info. Now realtime is queried for the latest and greatest in queue info. (closes issue #12858) Reported by: bcnit Patches: queue_show.patch uploaded by putnopvut (license 60) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@125476 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-25allow tonezone to live in a different place than DAHDI/Zaptel, since ↵kpfleming1-27/+23
dahdi-tools and dahdi-linux are now separate packages and can be installed in different places don't include tonezone.h in dahdi_compat.h, because only a couple of modules need it get app_rpt building again after the DAHDI changes (closes issue #12911) Reported by: tzafrir git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@125132 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-24Occasionally control characters find their way into CallerID. These need totilghman1-12/+37
be stripped prior to placing CallerID in the headers of an email. (closes issue #12759) Reported by: RobH Patches: 20080602__bug12759__2.diff.txt uploaded by Corydon76 (license 14) Tested by: RobH git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@124910 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-22(closes issue #12910)murf1-3/+3
Reported by: chris-mac Sorry, my testing did not contain the simple case of forkCDR(v), I am much embarrassed to admit. If I had, I would have more solidly initialized the opts element for varset. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@124540 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-20usleep with a value over 1,000,000 is nonportable. Changing to use sleep()tilghman1-1/+1
instead. (closes issue #12814) Reported by: pputman Patches: app_rtp_sleep.patch uploaded by pputman (license 81) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@124450 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-19Fix IMAP forwarding so that messages are sent to the proper mailbox.mmichelson1-0/+25
(closes issue #12897) Reported by: jaroth Patches: destination_forward.patch uploaded by jaroth (license 50) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@124112 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-17davidw pointed out that the holdtime calculation used bymmichelson1-2/+2
app_queue does not use "boxcar" filtering as the comments say. The term "boxcar" means that the number of samples used to calculate stays constant, with new samples replacing the oldest ones. The queue holdtime calculation uses all holdtime samples collected since the queue was loaded, so the comment has been changed to be accurate. (closes issue #12781) Reported by: davidw git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@123274 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-13Remove extra option from previous solution attempttwilson1-3/+3
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122617 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-13This should fix the behavior of the 'T' dial feature being passed ↵twilson1-14/+25
incorrectly to the transferee when builtin_atxfers are used. Also, doing a builtin_atxfer to parking was broken and is fixed here as well. (closes issue #11898) Reported by: sergee Tested by: otherwiseguy git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122589 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-12Adds DAHDI support alongside Zaptel. DAHDI usage favored, but all Zap stuff ↵jpeeler12-204/+236
should continue working. Release announcement to follow. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122314 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-12Properly play a holdtime message if the announce-holdtime option ismmichelson1-2/+3
set to "once." (closes issue #12842) Reported by: ramonpeek Patches: patch001.diff uploaded by ramonpeek (license 266) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122311 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-12(closes issue #12193)jpeeler1-14/+14
Reported by: davidw Patch by: Corydon76, modified by me to work properly with ParkAndAnnounce app git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122208 f38db490-d61c-443f-a65b-d21fe96a405b