aboutsummaryrefslogtreecommitdiffstats
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2008-08-07add a raw list of all libraries that any part of Asterisk links directly tokpfleming1-0/+61
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@136484 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-061) Bugfix for debugging codetilghman2-2/+2
2) Reduce compiler warnings for another section of debugging code (Closes issue #13237) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@135899 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-06Merging the issue11259 branch.mmichelson1-0/+6
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-0/+2
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-07-30Oops, wrong definetilghman1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134704 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-29build against the now-typedef-free dahdi/user.hkpfleming1-9/+9
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@134254 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-26Add the licensing section to the docs in 1.4, as well, so that we can work onrussell1-0/+31
having an accurate list for each version of Asterisk that is supported git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133980 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-23revert an optimization that broke ABI... thanks russell!kpfleming1-21/+2
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@133237 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-23make some more changes to the dahdi/zap channel name support stuff to ensure ↵kpfleming1-3/+3
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-0/+1
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-23minor optimization for stringfields: when a field is being set to a larger ↵kpfleming1-28/+45
value than it currently contains and it happens to be the most recent field allocated from the currentl pool, it is possible to 'grow' it without having to waste the space it is currently using (or potentially even allocate a new pool) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@132872 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-22fix up namespace pollution for dahdi_chan_mode enumkpfleming1-2/+2
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-22use renamed libpri API call for controlling this feature (was improperly ↵kpfleming1-2/+2
named before) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@132641 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-18Spinlock within the destroy, to allow a scheduled job to continue, if it'stilghman1-0/+16
waiting on the mutex which the destroy thread has. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@132042 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-18Preserve ABI compatibility with last changetilghman1-0/+4
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@131985 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-18Make the ast_assert call within ast_sched_del report something useful.tilghman1-1/+2
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@131970 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-18remove the dlfcn compatibility stuff, because no platforms that Asterisk ↵kpfleming1-88/+0
currently runs on it use it, and it doesn't build anyway git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@131921 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-11a whole pile of Zaptel/DAHDI compatibility work, with lots more to come... ↵kpfleming2-3/+7
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-11new installations should be using DAHDI instead of Zaptel, so the sample ↵kpfleming1-2/+2
config file is now chan_dahdi.conf instead of zapata.conf also, convert remaining references to zapata.conf in various places git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@130042 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-11add support for a configuration parameter for 'inband audio during RELEASE', ↵kpfleming1-0/+3
which is currently mandatory in libpri-1.4.4 but will become configurable in libpri-1.4.5 later today (related to issue #13042) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@130039 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-11add a simple ASTOBJ_TRYWRLOCK macro ...russell1-0/+2
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@129970 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-1/+2
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-04Fix the 'dialplan remove extension' logic, so that it a) works with cidmatch,tilghman1-1/+9
and b) completes contexts correctly when the extension is ambiguous. (closes issue #12980) Reported by: licedey Patches: 20080703__bug12980.diff.txt uploaded by Corydon76 (license 14) Tested by: Corydon76 git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@127973 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-03The CDRfix4/5/6 omnibus cdr fixes.murf1-2/+16
(closes issue #10927) Reported by: murf Tested by: murf, deeperror (closes issue #12907) Reported by: falves11 Tested by: murf, falves11 (closes issue #11849) Reported by: greyvoip As to 11849, I think these changes fix the core problems brought up in that bug, but perhaps not the more global problems created by the limitations of CDR's themselves not being oriented around transfers. Reopen if necc, but bug reports are not the best medium for enhancement discussions. We need to start a second-generation CDR standardization effort to cover transfers. (closes issue #11093) Reported by: rossbeer Tested by: greyvoip, murf git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@127663 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-30Fix a typo in the non-DEBUG_THREADS version of the recently added ↵russell1-2/+2
DEADLOCK_AVOIDANCE() macro. This caused the lock to not actually be released, and as a result, not avoid deadlocks at all. This resolves the issues reported in the last while about Asterisk locking up all over the place (and most commonly, in chan_iax2). (closes issue #12927) (closes issue #12940) (closes issue #12925) (potentially closes others ...) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@126573 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-27Since HAVE_DAHDI is defined to HAVE_ZAPTEL in dahdi_compat.h, we must firsttilghman1-4/+4
check for HAVE_ZAPTEL. (closes issue #12938) Reported by: opticron Patches: tonezone_compat.diff uploaded by opticron (license 267) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@125893 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-27In this debugging function, copy to a buffer instead of using potentially ↵tilghman1-4/+4
unsafe pointers. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@125793 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-25allow tonezone to live in a different place than DAHDI/Zaptel, since ↵kpfleming2-3/+36
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-13fixed dahdi compatability header from assuming either dahdi or zaptel is ↵jpeeler1-2/+2
installed (may not have either) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122663 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-12Adds DAHDI support alongside Zaptel. DAHDI usage favored, but all Zap stuff ↵jpeeler5-17/+214
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-12(closes issue #10668)murf1-5/+15
Reported by: arkadia Tested by: murf, arkadia Options added to forkCDR() app and the CDR() func to remove some roadblocks for CDR applications. The "show application ForkCDR" output was upgraded to more fully explain the inner workings of forkCDR. The A option was added to forkCDR to force the CDR system to NOT change the disposition on the original CDR, after the fork. This involves ast_cdr_answer, _busy, _failed, and so on. The T option was added to forkCDR to force obedience of the cdr LOCKED flag in the ast_cdr_end, all the disposition changing funcs (ast_cdr_answer, etc), and in the ast_cdr_setvar func. The CHANGES file was updated to explain ALL the new options added to satisfy this bug report (and some requests made verbally and via email, irc, etc, over the past months/year) The 's' option was added to the CDR() func, to force it to skip LOCKED cdr's in the chain. Again, the new options should be totally transparent to existing apps! Current behavior of CDR, forkCDR, and the rest of the CDR system should not change one little bit. Until you add the new options, at least! git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@122046 f38db490-d61c-443f-a65b-d21fe96a405b
2008-06-11Backport fix for 11520--for some reason I didn't do this back in February ↵twilson2-2/+21
when I patched for trunk. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@121992 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-29Oddly enough, all of the contents of audiohook.h were in there twice. I haverussell1-179/+0
removed the second copy. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@119076 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-29Define also when not DEBUG_THREADStilghman1-0/+5
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@118954 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-29Add some debugging code that ensures that when we do deadlock avoidance, wetilghman1-0/+32
don't lose the information about how a lock was originally acquired. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@118953 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-23Add format type checking for recently de-inlined functiontilghman1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@118055 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-23Don't declare a function that takes variable arguments as inline, because it'srussell1-14/+1
not valid, and on some compilers, will emit a warning. http://gcc.gnu.org/onlinedocs/gcc/Inline.html#Inline (closes issue #12289) Reported by: francesco_r Patches by Tilghman, final patch by me git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@118048 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-19The addition of usleep(2) within ast_assert requires the inclusion of the ↵tilghman1-0/+1
unistd.h header git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@117086 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-14Add ast_assert(), which can be used to handle fatal errors. It is only compiledrussell2-7/+27
in if dev-mode is enabled, and only aborts if DO_CRASH is defined. (inspired by issue #12650) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@116463 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-13A change to the way channel locks are handled when DEBUG_CHANNEL_LOCKS is ↵mmichelson1-3/+6
defined. After debugging a deadlock, it was noticed that when DEBUG_CHANNEL_LOCKS is enabled in menuselect, the actual origin of channel locks is obscured by the fact that all channel locks appear to happen in the function ast_channel_lock(). This code change redefines ast_channel_lock to be a macro which maps to __ast_channel_lock(), which then relays the proper file name, line number, and function name information to the core lock functions so that this information will be displayed in the case that there is some sort of locking error or core show locks is issued. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@116088 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-09Improve res_ninit and res_ndestroy autoconf logic on the Darwin platform.file1-0/+3
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115579 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-07Merged revisions 115511 via svnmerge from russell1-974/+0
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r115511 | russell | 2008-05-07 11:22:49 -0500 (Wed, 07 May 2008) | 3 lines Remove remnants of dlinkedlists. I didn't actually use them in the final version of my IAX2 improvements. ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115512 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-05Make sure that either the main speex library contains preprocess functions ↵file1-0/+3
or that speexdsp does. If both fail then speex stuff can not be built. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115327 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-05Err, the documentation on the return value of ast_odbc_backslash_is_escape ↵tilghman1-1/+1
is exactly backwards. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115308 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-04For my next trick I will make these work with what our autoconf header file ↵file1-6/+6
gives us. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115279 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02Add new "pri show version" command to show the libpri version for support ↵bbryant1-0/+3
reasons. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115257 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02Clarify a comment that was, well, just wrong. It turns out thatmmichelson1-11/+5
ignoring the way that macros expand. Instead, I have clarified in the comment why the macro will work even if the scheduler id for the task to be deleted changes during the execution of the macro. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115196 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01Change the comment of deprecated to an actual compiler deprecationtilghman1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@115102 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30Merge changes from team/russell/iax2_find_callno and iax2_find_callno_1.4russell1-0/+974
These changes address a critical performance issue introduced in the latest release. The fix for the latest security issue included a change that made Asterisk randomly choose call numbers to make them more difficult to guess by attackers. However, due to some inefficient (this is by far, an understatement) code, when Asterisk chose high call numbers, chan_iax2 became unusable after just a small number of calls. On a small embedded platform, it would not be able to handle a single call. On my Intel Core 2 Duo @ 2.33 GHz, I couldn't run more than about 16 IAX2 channels. Ouch. These changes address some performance issues of the find_callno() function that have bothered me for a very long time. On every incoming media frame, it iterated through every possible call number trying to find a matching active call. This involved a mutex lock and unlock for each call number checked. So, if the random call number chosen was 20000, then every media frame would cause 20000 locks and unlocks. Previously, this problem was not as obvious since Asterisk always chose the lowest call number it could. A second container for IAX2 pvt structs has been added. It is an astobj2 hash table. When we know the remote side's call number, the pvt goes into the hash table with a hash value of the remote side's call number. Then, lookups for incoming media frames are a very fast hash lookup instead of an absolutely insane array traversal. In a quick test, I was able to get more than 3600% more IAX2 channels on my machine with these changes. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@114891 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-23Store the manager session ID explicitly as 4 byte ID instead of a ulong. Therussell1-2/+2
mansession_id cookie is coded to be limited to 8 characters of hex, and this could break logins from 64-bit machines in some cases. (inspired by AST-20) git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@114591 f38db490-d61c-443f-a65b-d21fe96a405b