Page Multiple Tenants at Once
If you would require to page to all or to a certain number of tenants at once, you can create a very simple custom script. See our Custom Scripts page on Developer Resource Center.

2007-10-13

ScopServ Telephony 1.4.5, Asterisk 1.4.13 and Wanpipe 3.2.0
more...



Release Notes

This section explains some of the new features and significant improvements over previous versions. Note that bug fixes in previous update versions are also included in the current update version.

Asterisk 1.4.18

VersionDateDescription
r1012222008-01-30
  • Fix an issue where if a frame of higher sample size preceeded a frame of lower sample size and ast_slinfactory_read was called with a sample size of the combined values or higher a crash would happen. (closes issue #11878) Reported by: stuarth
r1012192008-01-30
  • Change default config to use descending channel order of groups, rather than ascending. Fixes a potential source of confusion in glare-type situations. Issue 11875, reported by JimVanM.
r1012162008-01-30
  • Fix a logic error with regards to autofill. Prior to this change, it was possible for a caller to go out of turn if autofill were enabled and callers ahead in the queue were attempting to call a member. This change fixes this.
r1011522008-01-30
  • Stop musiconhold on attended transfer. (closes issue #11872) Reported by: gareth Patches: svn-101018.patch uploaded by gareth (license 208)
r1010802008-01-29
  • updated build_tools to handle the autotag directory structure changes; changes related to BE-353. Patch by The Russell and reviewed by The Me.
r100973-1010352008-01-29
  • Remove a memory leak from updating realtime queues
  • Fixing an erroneous return value returned when attempting to pause or unpause a queue member fails. Fixes BE-366, thanks to John Bigelow for writing the patch.
r1009342008-01-29
  • Don't forget to record the channel so we know whether it is bridged or not later. (closes issue #11811) Reported by: slavon
r1009322008-01-29
  • Fix the last couple of issues related to building from a path that contains spaces. (closes issue #11834)
r1009302008-01-29
  • Initialize an array to 0s if config option not specified. (closes issue #11860) Patches: misdn_get_config.v1.diff uploaded by IgorG (license 20)
r100882-1009222008-01-29
  • Use GNU make magic instead of shell magic to escape spaces in the working directory. (related to issue #11834)
  • Fix building Asterisk when the working path has spaces in it. (closes issue #11834) Reported by: spendergrass Patched by: me
r1008352008-01-29
  • Allow zap groups above 30 to work properly. (closes issue #11590) Reported by: tbsky
r1007932008-01-29
  • fixed potential segfault in misdn show channels CLI command
r1007402008-01-29
  • (closes issue #11736) Reported by: MVF Patches: bug11736-2.diff uploaded by oej (license 306) Tested by: oej, MVF, revolution (russellb: This was the showstopper for the release.)
r1006752008-01-28
  • WaitExten didn't handle AbsoluteTimeout properly (went to 't' instead of 'T')
r1006732008-01-28
  • Undoing the deprecation of chan_vpb. It is alive and well.
r1006722008-01-28
  • When using ODBC_STORAGE, make sure we put greeting files into the database like we do with the others. Issue #11795 Reported by: dimas Patches: vmgreet.patch uploaded by dimas (license 88)
r100626-1006292008-01-28
  • For some reason, the use of this strdupa() is leading to memory corruption on freebsd sparc64. This trivial workaround fixes it. (closes issue #10300, closes issue #11857, reported by mattias04 and Home-of-the-Brave)
  • Fix a crash in ast_masq_park_call() (issue #11342) Reported by: DEA Patches: res_features-park.txt uploaded by DEA (license 3)
r1006242008-01-28
  • Correct a comment which made little/no sense.
r1005812008-01-28
  • main/channel.c, channels/chan_local.c, include/asterisk/channel.h: Make some deadlock related fixes. These bugs were discovered and reported internally at Digium by Steve Pitts. - Fix up chan_local to ensure that the channel lock is held before the local pvt lock. - Don't hold the channel lock when executing the timing function, as it can cause a deadlock when using chan_local. This actually changes the code back to be how it was before the change for issue #10765. But, I added some other locking that I think will prevent the problem reported there, as well.
r1004652008-01-27
  • main/rtp.c, channels/chan_mgcp.c, main/cdr.c, channels/chan_misdn.c, main/dnsmgr.c, channels/chan_sip.c, channels/chan_h323.c, include/asterisk/sched.h, main/file.c, pbx/pbx_dundi.c, channels/chan_iax2.c: When deleting a task from the scheduler, ignoring the return value could possibly cause memory to be accessed after it is freed, which causes all sorts of random memory corruption. Instead, if a deletion fails, wait a bit and try again (noting that another thread could change our taskid value). (closes issue #11386) Reported by: flujan Patches: 20080124__bug11386.diff.txt uploaded by Corydon76 (license 14) Tested by: Corydon76, flujan, stuarth`
r1004182008-01-25
  • Deprecating chan_vpb. It is now preferred that users of Voicetronix products use chan_zap in combination with their zaptel drivers.
r1003782008-01-25
  • This would have never been true, since we're passing (sizeof(req.data) - 1) as the len to recvfrom().
r1002642008-01-24
  • make these macros not assume that the only other field in the structure is 'argc'... this is true when someone uses AST_DECLARE_APP_ARGS, but it's perfectly reasonable to define your own structure as long as it has the right fields
r1001642008-01-24
  • Update main Asterisk copyright info to 2008
r1001382008-01-24
  • Fix compilation on Solaris. (closes issue #11832) Patches: bug-11832.diff uploaded by snuffy (license 35)
r99977-999782008-01-23
  • Second attempt. Don't change invitestate when receiving 18x messages in CANCEL state. (issue #11736) Reported by: MVF Patch by oej.
  • Make sure we don't cancel destruction on calls in CANCEL state, even if we get 183 while waiting for answer on our CANCEL. (issue #11736) Reported by: MVF Patches: bug11736.txt uploaded by oej (license 306) Tested by: MVF
r999752008-01-23
  • Fixing a typo.
r999232008-01-23
  • ChanSpy issues a beep when it starts at the beginning of a list of channels to potentially spy on. However, if there were no matching channels, it would beep at you over and over, which is pretty annoying. Now, it will only beep once in the case that there are no channels to spy on, but it will still beep again once it reaches the beginning of the channel list again. (closes issue #11738, patched by me)
r998782008-01-23
  • These flag tests were illogical. They were testing sip_peer flags on a sip_pvt. Thanks to Russell for helping to get this odd problem figured out.
r99718-997772008-01-23
  • When we reset the password via an external command, we should also reset the password stored in the in-memory list, too (otherwise it doesn't really take effect). (closes issue #11809) Reported by: davetroy Patches: fix_externpass.diff uploaded by davetroy (license 384)
  • Oops, should have checked for a NULL obj, here, too
  • Just confirmed that all current platforms need this header file
r996522008-01-22
  • Thanks to Russell's education I realize that BUFSIZ has changed since I learned the C language over 20 years ago... Resetting chan_sip to the size of BUFSIZ that I expected in my old head to avoid to heavy memory allocations on some systems.
r996432008-01-22
  • Fix the defines for OS X (and Solaris, too)
r99592-995942008-01-22
  • channels/chan_local.c, res/res_features.c, channels/chan_agent.c, apps/app_followme.c: Add more dependencies on chan_local and add a note to the description of chan_local so that people don't disable it in menuselect just to clean up.
  • Add dependency on chan_local to app_dial. Dial still runs without chan_local, but will be missing forwarding functionality.
r995402008-01-22
  • Ensure that we can get an address even when we don't have a default route. (closes issue #9225) Reported by: junky Patches: 20080122__bug9225.diff.txt uploaded by Corydon76 (license 14) Tested by: oej, loloski, sergee
r995012008-01-22
  • Cleaning up some documentation that led to confusion in a bug report
r994262008-01-21
  • Fixing an issue wherein monitoring local channels was not possible. During a channel masquerade, the monitors on the two channels involved are swapped. In 99% of the cases this results in the desired effect. However, if monitoring a local channel, this caused the monitor which was on the local channel to get moved onto a channel which is immediately hung up after the masquerade has completed. By swapping the monitors prior to the masquerade, we avoid the problem by tricking the masquerade into placing the monitor back onto the channel where we want it. During the investigation of the issue, the channel's monitor was the only thing that was swapped in such a manner which did not make sense to have done. All other variable swapping made sense.
r993412008-01-21
  • res/res_odbc.c, configs/res_odbc.conf.sample, include/asterisk/res_odbc.h: Permit the user to specify number of seconds that a connection may remain idle, which fixes a crash on reconnect with the MyODBC driver. (closes issue #11798) Reported by: Corydon76 Patches: 20080119__res_odbc__idlecheck.diff.txt uploaded by Corydon76 (license 14) Tested by: mvanbaak
r993012008-01-21
  • Bump the buffer size for Via headers up to 512. There are some exceptionally large Via headers out there. (closes issue #11783) Reported by: ofirroval
r991872008-01-19
  • Fix a couple of memory leaks with frame handling. Specifically, ast_frame_free() needed to be called on the frame that came from the translator to signed linear.
r991272008-01-18
  • Remove the __ in front of the unused variable. This causes some compilers to freak out.
r99079-990812008-01-18
  • Revert adding the packed attribute, as it really doesn't make sense why that would do any good. Fix the real bug, which is to do the check to see if the frame came from a translator at the beginning of ast_frame_free(), instead of at the end. This ensures that it always gets checked, even if none of the parts of the frame are malloc'd, and also ensures that we aren't looking at free'd memory in the case that it is a malloc'd frame. (closes issue #11792, reported by explidous, patched by me)
  • Since we're relying on the offset between the frame and the beginning of the translator pvt struct, set the packed attribute to make sure we get to the right place. (potential fix for issue #11792)
r990322008-01-18
  • This should at least temporarily fix a problem where the 't' Dial option is incorrectly passed to the transferee when built-in attended transfers are used. There is still a problem with 'T', but better to fix some problems than no problems while we work on it. (closes issue #7904) Reported by: k-egg Patches: transfer-fix-b14-r97657.diff uploaded by sergee (license 138) Tested by: sergee, otherwiseguy
r99007-990142008-01-17
  • doh! revert a revert of a revert (changed by mistake in 99010)
  • missed that one while reverting
  • reverting 99001 - We need the Max-Age for extending the life of cookie mansession_id
r990042008-01-17
  • main/frame.c, channels/chan_iax2.c, include/asterisk/frame.h: Have IAX2 optimize the codec translation path just like chan_sip does it. If the caller's codec is in our codec list, move it to the top to avoid transcoding. (closes issue #10500) Reported by: stevedavies Patches: iax-prefer-current-codec.patch uploaded by stevedavies (license 184) iax-prefer-current-codec.1.4.patch uploaded by stevedavies (license 184) Tested by: stevedavies, pj, sheldonh
r990012008-01-17
  • we should only send the Set-Cookie header to the browser on the first response after creating a manager session, not on every response (doing so causes the browser to clear any local cookies it may have associated with the session)
r989912008-01-17
  • Add a clarification about the immediate= option of zapata.conf Issue 11784, patch by klaus3000.
r989822008-01-16
  • Add an unused pointer to the ast_channel struct. This makes the ast_channel structure retain the same size as it had in previous 1.4 releases. Also, all of the offsets for members in the structure are still the same (except for the two pointers that got replaced for the new spy/whisper architecture.)
r98966-989732008-01-16
  • Bump up cleancount due to previous commit that changed the channel structure.
  • apps/app_chanspy.c, apps/app_mixmonitor.c, main/rtp.c, main/channel.c, apps/app_meetme.c, include/asterisk/audiohook.h (added), main/Makefile, include/asterisk/chanspy.h (removed), include/asterisk/channel.h, main/audiohook.c (added): Replace current spy architecture with backport of audiohooks. This should take care of current known spy issues.
  • Add missing NULLs at end of two ast_load_realtimes. (closes issue #11769) Reported by: tequ Patches: chaniax.patch uploaded by dimas (license 88)
r989642008-01-16
  • Fix a deadlock in chan_local in local_hangup. There was contention because the local_pvt was held and it was attempting to lock a channel, which is the incorrect locking order. (closes issue #11730) Reported by: UDI-Doug Patches: 11730.patch uploaded by putnopvut (license 60) Tested by: UDI-Doug
r98951-989602008-01-16
  • Introduce a lock into the dialing API that protects it when destroying the structure. (closes issue #11687) Reported by: callguy Patches: 11687.diff uploaded by file (license 11)
  • Add two more SDP names for ulaw and alaw. (closes issue #11777) Reported by: tootai
  • Don't drop the old record route information when dealing with packets related to a reinvite. (closes issue #11545) Reported by: kebl0155 Patches: reinvite-patch.txt uploaded by kebl0155 (license 356)
  • build_tools/menuselect-deps.in, configure, include/asterisk/autoconfig.h.in, codecs/codec_speex.c, configure.ac, makeopts.in: Add autoconf logic for speexdsp. Later versions use a separate library for some things so we need to use it if present in codec_speex. (closes issue #11693) Reported by: yzg
r98943-989462008-01-15
  • Change a buffer in check_auth() to be a thread local dynamically allocated buffer, instead of a massive buffer on the stack. This fixes a crash reported by Qwell due to running out of stack space when building with LOW_MEMORY defined. On a very related note, the usage of BUFSIZ in various places in chan_sip is arbitrary and careless. BUFSIZ is a system specific define. On my machine, it is 8192, but by definition (according to google) could be as small as 256. So, this buffer in check_auth was 16 kB. We don't even support SIP messages larger than 4 kB! Further usage of this define should be avoided, unless it is used in the proper context.
  • main/rtp.c, include/asterisk/translate.h, main/frame.c, main/translate.c, main/abstract_jb.c, channels/chan_iax2.c, codecs/codec_zap.c, include/asterisk/frame.h: Commit a fix for some memory access errors pointed out by the valgrind2.txt output on issue #11698. The issue here is that it is possible for an instance of a translator to get destroyed while the frame allocated as a part of the translator is still being processed. Specifically, this is possible anywhere between a call to ast_read() and ast_frame_free(), which is _a lot_ of places in the code. The reason this happens is that the channel might get masqueraded during this time. During a masquerade, existing translation paths get destroyed. So, this patch fixes the issue in an API and ABI compatible way. (This one is for you, paravoid!) It changes an int in ast_frame to be used as flag bits. The 1 bit is still used to indicate that the frame contains timing information. Also, a second flag has been added to indicate that the frame came from a translator. When a frame with this flag gets released and has this flag, a function is called in translate.c to let it know that this frame is doing being processed. At this point, the flag gets cleared. Also, if the translator was requested to be destroyed while its internal frame still had this flag set, its destruction has been deffered until it finds out that the frame is no longer being processed. Admittedly, this feels like a hack. But, it does fix the issue, and I was not able to think of a better solution ...
r98894-989342008-01-15
  • Based on the boundary found move over the correct amount. (closes issue #11750) Reported by: tasker
  • Accept "; boundary=" not just ";boundary=" in the multipart mixed content type. (closes issue #11750) Reported by: tasker
r988492008-01-14
  • Adding in appropriate unlocks for the locks I added. Thanks to joetester on IRC for pointing this out.
r987742008-01-14
  • Revert a change that introduces an unacceptable performance hit and is causing memory leaks ... (from rev 97973)
r98733-987372008-01-14
  • Fixing another compilation error. I'm a bit off today :(
  • Oops. Last commit had compilation error.
  • Adding explicit defaults for missing options to init_queue. This is necessary because if a user either removes or comments one of these options and reloads their queues, the option will not reset to its default, instead maintaining the value from prior to the reload. Thanks to John Bigelow for pointing this error out to me.
r984672008-01-12
  • Add a connection timeout attribute, as that was what was intended with the login timeout, but ODBC divides it up into 2 different timeouts. (Closes issue #11745)
r983902008-01-11
  • Fix up setting the EID on BSD based systems. (closes issue #11646) Reported by: caio1982 Patches: dundi_osx_eid6.diff.txt uploaded by caio1982 (license 22) dundi_osx_eid6-1.4.diff uploaded by caio1982 (license 22) Tested by: caio1982, mvanbaak
r983722008-01-11
  • Comment explaining how to force browser to always read some html files from server.
r98317-983252008-01-11
  • If the incoming RTP stream changes codec force the bridge to break if the other side does not support it. (closes issue #11729) Reported by: tsearle Patches: new_codec_patch_udiff.patch uploaded by tsearle (license 373)
  • If the channel is hungup during RECORD FILE send a result code of -1 to be uniform with everything else. (closes issue #11743) Reported by: davevg Patches: res_agi.diff uploaded by davevg (license 209)
r983152008-01-11
  • Properly report the hangup cause as no answer when someone does not answer (closes issue #10574, reported by boch, patched by moy)
r982662008-01-11
  • Add another exception (which doesn't work) for -march optimization flag. Reported by: thomasmebes Patch by: tilghman (Closes issue #11563)
r982652008-01-11
  • doc/security.txt, main/asterisk.c, configure, include/asterisk/autoconfig.h.in, main/Makefile, configure.ac, makeopts.in: Backport the ability to set the ToS bits on Linux when not running as root. Normally, we would not backport features into 1.4, but, I was convinced by the justification supplied by the supplier of this patch. He pointed out that this patch removes a requirement for running as root, thus reducing the potential impacts of security issues. (closes issue #11742) Reported by: paravoid Patches: libcap.diff uploaded by paravoid (license 200)
r982192008-01-11
  • Ensure the return value of ast_bridge_call is passed back up as the application return value. This is needed for transfers to function so the PBX core knows to continue execution. (closes issue #10327) Reported by: kkiely
r981642008-01-11
  • Back out changes from revision 97077, since it wasn't perfect
r97976-980822008-01-11
  • Fix samples vs. length calculations for g722
  • Simplify this code with a suggestion from Luigi on the asterisk-dev list. Instead of using is16kHz(), implement a format_rate() function.
  • Fix various timing calculations that made assumptions that the audio being processed was at a sample rate of 8 kHz.
r979732008-01-10
  • 1) When we get a translated frame out, clone it, because if the translator pvt is freed before we use the frame, bad things happen. 2) Getting a failure from ast_sched_delete means that the schedule ID is currently running. Don't just ignore it. (Closes issue #11698)
r979252008-01-10
  • Let us leave a voicemail for ourself if we have logged into VoiceMailMain and chosen to leave a message. (closes issue #11735, reported and patched by jamessan)
r97849-978892008-01-10
  • Applied the same fixes for ael.flex as was done in 97849 for ast_expr2.fl; overrode the normally generate yyfree func with our own version that checks the pointer for non-null before passing to free(). Also takes care of a little problem with 2.5.33 and the use of the __STDC_VERSION__ macro.
  • This is a fix for 2 things: a problem Terry was having in OSX with null pointers, which was my fault, as I probably forgot to run the sed script last time I made mods. So, I moved the fix into the flex input itself. Then, I found when I used flex 2.5.33, that it was using __STDC_VERSION__, and that's not real good; so I added back in a DIFFERENT sed script to fix that little mess. Tested everything, a couple different ways. Hope I did no harm, at the least.
r978472008-01-10
  • Fix a comment that is no longer true.
r97734-977532008-01-10
  • pbx/pbx_kdeconsole.h (removed), configs/modules.conf.sample, pbx/kdeconsole_main.cc (removed): Remove other remnants of pbx_kdeconsole
  • pbx/pbx_kdeconsole.cc (removed), build_tools/menuselect-deps.in, configure, include/asterisk/autoconfig.h.in, configure.ac, makeopts.in: Remove pbx_kdeconsole from the tree. It hasn't worked in ages, and nobody has complained. (closes issue #11706, reported by caio1982)
r976972008-01-10
  • Don't try to copy the category from the group if no category exists. (closes issue #11724) Reported by: IgorG Patches: group_count.v1.patch uploaded by IgorG (license 20)
r97640-976452008-01-09
  • Strip terminal sequences from the verbose messages
  • Make pbx_gtkconsole build ... but doesn't actually load on my system still (related to issue #11706)
r97618-976222008-01-09
  • Correctly display a message if a command could not be found. Also fix a comment which may have led to this happening. Issue 11718, reported by kshumard.
  • Fix some locking and return value funkiness. We really shouldn't be unlocking this lock inside of a function, unless we locked it there too.
r975752008-01-09
  • Part 2 of app_queue doxygen improvements. Some smaller functions this time
r975292008-01-09
  • Fix saying the parking space number to the caller doing the parking ...
r974912008-01-09
  • report the same message whether Zaptel does not have transcoder support loaded or no transcoders were found
r974892008-01-09
  • Set the caller id within the gtalk_alloc function. As underlined in issue #10437 by Josh, we need to prevent a possible memory leak. We only set the name part of the caller id, the number part is not relevant when dealing with JIDs. Closes issue #11549.
r974502008-01-09
  • Don't do conferencing totally in Zaptel if Monitor is running on the channel. (closes issue #11709) Reported by: BigJimmy Patches: patch-meetmerec uploaded by BigJimmy (license 371)
r97410-974482008-01-09
  • pass the right variable to get an error string... oops
  • add error number output to ioctl failure messages to help with debugging
r973502008-01-09
  • Allow filename completion on zero-length modules, remove a memory leak, remove a file descriptor leak, and make filename completion thread-safe. Patched and tested by tilghman. (Closes issue #11681)
r97206-973082008-01-09
  • use the \retval doxygen command properly
  • Part 1 of N of adding doxygen comments to app_queue. I picked some of the most common functions used (which also happen to be some the biggest/ugliest functions too) to document first. I'm pretty new to doxygen so criticism is welcome.
  • Some coding guidelines-related cleanup
r971952008-01-08
  • Fix various DTMF issues in chan_mgcp. (closes issue #11443) Reported by: eferro Patches: dtmf_control_hybrid-inband-mode.patch uploaded by eferro (license 337)
r971942008-01-08
  • Increase constants to where we're less likely to hit them while debugging. (Closes issue #11694)
r971922008-01-08
  • Making some changes designed to not allow for a corrupted mailstream for a vm_state. 1. Add locking to the vm_state retrieval functions so that no linked list corruption occurs. 2. Make sure to always grab the persistent vm_state when mailstream access is necessary. 3. Correct an incorrect return value in the init_mailstream function. (closes issue #11304, reported by dwhite)
r97093-971522008-01-08
  • If no group has been provided to the GROUP_COUNT dialplan function then use the first one specific to the channel. (closes issue #11077) Reported by: m4him
  • Make app_queue calls work with directed pickup. (closes issue #11700) Reported by: jbauer
r970772008-01-08
  • Apply multiple crash fixes, found in issue #11386, but not completely closing that issue.
r96884-969322008-01-07
  • Merged revisions 96931 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r96931 | russell | 2008-01-07 14:46:22 -0600 (Mon, 07 Jan 2008) | 2 lines Change misery.digium.com to pbx.digium.com ........
  • Don't crash if something happens when setting up an SMDI interface and it gets destroyed before the SMDI port handling thread gets created.
r96797-968152008-01-07
  • Indentation fix, makes the code easier to read
  • Compute the base64 value over the [authzid]\0authcid\0password string, thus excluding the trailing NULL byte. This change has already been committed to trunk, see #11644.
r966442008-01-05
  • Don't pass an empty string as the device name.
r965752008-01-04
  • Fix the problem of notification of a device state change to a device with a '-' in the name. Could probably do with a better fix in trunk, but this bug has been open way too long without a better solution. Reported by: stevedavies Patch by: tilghman (Closes issue #9668)
r965732008-01-04
  • Properly continue in the dialplan if using PARKINGEXTEN and the slot is full. Issue 11237, patch by me.
r965252008-01-04
  • If you change the bindaddr in sip.conf to a non-bound address and reload, sip goes kablooie. Reported and patched by: one47 (Closes issue #11535)
r96394-964492008-01-04
  • Make use of the temporary channel pointer while the pvt is unlocked. (closes issue #11675) Reported by: flefoll Patches: chan_zap.c.patch-store-owner-before-unlock uploaded by flefoll (license 244)
  • Don't crash if the iax2 pvt structure has been destroyed before we get to this point (closes issue #11672, reported by snuffy, patched by me)
r963182008-01-03
  • Missed initialization caused crash. Reported and fixed by: tiziano (Closes issue #11671)
r96198-961992008-01-03
  • make sure frame is completely clean, before we send it to asterisk as DTMF. If we don't make it clean, it happens that one way audio occurs..
  • when overlapdial was used and no number was dialed, the call was dropped, now we just jump into the s extension, which makes a lot more sense.
r961022008-01-02
  • We need to reset the membername to NULL on each iteration of this loop, otherwise the result is that multiple members can have the same name, since the variable was not reset on each iteration of the loop.
r96020-960242008-01-02
  • Convert locks of the contexts list in pbx_config to the appropriate rdlock or wrlock
  • pbx_dundi only needs a rdlock on the contexts list.
  • app_macro only needs a rdlock on the contexts list.

Asterisk 1.4.17

VersionDateDescription
r959462008-01-02
  • Allocate a SIP refer structure when performing a transfer using BYE with Also so that the transfer information is properly stored. (AST-2008-028) (closes issue #11637) Reported by: greyvoip
r958902008-01-02
  • A change to improve the accuracy of queue logging in the case where a member does not answer during the specified timeout period. Prior to this change, there was a small chance that the member name recorded in this case would be blank. Also prior to this change, if using the ringall strategy, if no one answered the call during the specified timeout, the member name listed in the queue log would randomly be one of the members that was rung. (closes issue #11498, reported and tested by hloubser, patched by me)
r955772007-12-31
  • Avoiding a potentially bad locking situation. ast_merge_contexts_and_delete writelocks the conlock, then calls ast_hint_extension, which attempts to readlock the same lock. Recursion with read-write locks is dangerous, so the inner lock needs to be removed. I did this by copying the "guts" of ast_hint_extension into ast_merge_contexts_and_delete (sans the extra lock). (this change is inspired by the locking problems seen in issue #11080, but I have no idea if this is the problematic area experienced by the reporters of that issue)
r954702007-12-31
  • Allow the default "0" to be returned if the STAT fails (Closes issue #11659)
r951912007-12-28
  • Remove duplicate increment of the header count in the add_header() function. (closes issue #11648) Reported by: makoto Patch provided by sergee, committed patch by me, inspired by comments from putnopvut
r950952007-12-28
  • I found a bug while browsing the queue code and managed to reproduce it in a small setup. If a queue uses the ringall strategy, it was possible through unfortunate coincidence for a single member at a given penalty level to make app_queue think that all members at that penalty level were unavailable and cause the members at the next penalty level to be rung. With this patch, we will only move to the next penalty level if ALL the members at a given penalty level are unreachable.
r950242007-12-27
  • Don't report a syntax error when an empty string is passed to ast_get_group. Just return 0. (closes issue #11540) Reported by: tzafrir Patches: group_empty.diff uploaded by tzafrir (license 46) -- slightly changed by me
r949772007-12-27
  • Fixing a typo in a comment.
r94905-949242007-12-27
  • Include types.h in chan_h323 as without it it can not be compiled on some operating systems like FreeBSD to name one. (closes issue #11585) Reported by: sobomax Patches: chan_h323.c.diff uploaded by sobomax (license 359)
  • Use ast_strlen_zero to see if our_contact is set or not on the dialog. It is possible for it to be a pointer to NULL. (closes issue #11557) Reported by: FuriousGeorge
r94828-948312007-12-27
  • Now that the contexts lock is a read/write lock, it should not be locked here in ast_hint_state_changed(). This makes it get locked recursively which now causes a deadlock. (closes issue #11080, thanks to callguy for the access to a deadlocked machine)
  • Use the constant that I really meant to use here ...
  • Change ast_translator_best_choice() to only pay attention to audio formats. This fixes a problem where Asterisk claims that a translation path can not be found for channels involving video. (closes issue #11638) Reported by: cwhuang Tested by: cwhuang Patch suggested by cwhuang, with some additional changes by me.
r948242007-12-27
  • make this comment explain the situation in an even more explicit fashion
r948082007-12-26
  • Workaround for what is probably a glibc bug (but we'll see this crop up again and again, if we don't add the workaround). Reported by: rolek Patch by: tilghman (Closes issue #11601, closes issue #11426)
r94789-948012007-12-26
  • Just in case the AST_FLAG_END_DTMF_ONLY flag was already set before starting autoservice, remember it and ensure that the channel has the same setting when autoservice gets stopped. (pointed out by d1mas, patched up by me)
  • When a channel is in autoservice, mark a flag on the channel that says that we only care about the END of a digit. That way, no magic digit emulation stuff will happen when all we're doing is queueing up END frames.
  • Don't try to send a parked call back to itself. (closes issue #11622, reported by djrodman, patched by me)
  • Don't store DTMF BEGIN frames while a channel is in autoservice. It's just going to make ast_read() do a lot of extra work when the channel comes back out of autoservice. (closes issue #11628, patched by me)
  • List include/asterisk/version.h as a .PHONY target because we want the commands listed for this target to be executed regardless of whether the file exists or not. This fixes having the version not up to date when running from svn. (closes issue #11619, reported by plack, fixed by me)
r947692007-12-25
  • file says... build on the builders.
r94763-947672007-12-24
  • Race: we need to wait to queue a NewChannel event until after the channel is inserted into the channel list. The reason is because some manager users immediately queue requests from the channel when they see that event and are confused when Asterisk reports no such channel. (Closes issue #11632)
  • More deadlock avoidance code (this time between sip_monitor and sip_hangup) Reported by: apsaras Patch by: tilghman (Closes issue #11413)
  • Another bit of bad logic in realtime_peer Reported by: dimas Patch by: dimas (Closes issue #11631)
r946602007-12-23
  • Argh... I suppose third time's the charm.
r94468-945432007-12-21
  • Bunch of coding guidelines cleanup
  • Better quota support for using IMAP storage voicemail (closes issue #11415, reported by jaroth) (closes issue #11152, reported by selsky) Patch provided by jaroth
  • The mail_copy c-client function does not expect a full imap mailbox string, just the name of the mailbox. (closes issue #11419, reported and patched by jaroth, with additional patchwork from me)
  • Since we are freeing list elements within a list traversal, we need to use the safe traversal and remove the item from the list before freeing it. (closes issue 11612, reported by dtyoo)
r944662007-12-21
  • Convert the contexts lock to a read/write lock to resolve a deadlock. This has a nice side benefit of improving performance. :) (closes issue #11609) (closes issue #11080)
r94420-944642007-12-21
  • Removing a debug message I accidentally just committed
  • Fixing Portuguese syntax for saying dates and times. Also some coding guidelines cleanup. (closes issue #11599, reported and patched by caio1982, coding guidelines cleanup by me)
r944182007-12-21
  • Fix for restart-as-user problem reported via the -dev list

Asterisk 1.4.16.2

VersionDateDescription
r94215-942562007-12-20
  • Merged revisions 94255 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r94255 | russell | 2007-12-20 14:21:41 -0600 (Thu, 20 Dec 2007) | 5 lines Fix another potential seg fault ... (closes issue #11606) Reported by: dimas ........
  • Fix a deadlock in d-channel handling in chan_zap. This deadlock was introduced by the fix to ensure that channels are properly locked when handling channel variables. There were sections of this code where the channel pvt was locked before the channel lock, when in fact it _must_ be the other way around. (closes issue #11582) Reported by: bugi
  • Blocked revisions 94214 via svnmerge ........ r94214 | russell | 2007-12-20 11:29:11 -0600 (Thu, 20 Dec 2007) | 2 lines Fix a couple of places where it's possible to dereference a NULL pointer. ........
r941222007-12-19
  • Sox versions 13.0.0 and newer do not have "soxmix" and instead use sox -m. res_monitor needs to use this if the user does not have soxmix. (closes issue #11589, reported by amessina, patch inspired by amessina but with a flourish from me)
r940772007-12-19
  • Check for the existence of the soxmix application on the target platform and have the result available in autoconfig.h. (part of issue #11589)

Asterisk 1.4.16.1

VersionDateDescription
r939552007-12-19
  • Make the 1.4 builders happy, ensure var is NULL.
r939492007-12-19
  • Avoid segfault in chan_iax when peer isn't defined (Closes issue #11602)
r937642007-12-18
  • FreeBSD also does not have byte swap functions. Issue 11586, patch by sobomax.

Asterisk 1.4.16

VersionDateDescription
r93668-936762007-12-18
  • Merged revisions 93667 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r93667 | tilghman | 2007-12-18 12:23:06 -0600 (Tue, 18 Dec 2007) | 2 lines Fixing AST-2007-027 (Closes issue #11119) ........
r936252007-12-18
  • Rework deadlock avoidance used in ast_write, since it meant that agent channels which were being monitored had one audio file recorded and one empty audio file saved. (closes issue #11529, reported by atis patched by me)
r93381-934202007-12-17
  • What was I thinking when I wrote this masterpiece? -1 + 1 = 0.. who woulda thunk it?.
r933772007-12-17
  • Do not try to access information about a lock when printing out a trylock attempt. It is possible for the lock that it references to no longer be valid. This would have caused segfaults or deadlocks. (issue #BE-263) (closes issue #11080) Reported by: callguy (closes issue #11100) Reported by: callguy
r933362007-12-17
  • Today is tomorrow's yesterday, and yesterday's tomorrow is today, and tomorrow's tomorrow is the day after tomorrow, so who cares if you recycle anyway? If this confuses you, that's nothing compared to what this fixes. ;-)
r932912007-12-17
  • We need to create the directory for a voicemail user even if they are using IMAP storage since greetings are stored in the filesystem. (closes issue #11388, reported by spditner, patch by me inspired by a patch by spditner)
r932502007-12-17
  • If a call is received with a called number IE containing nothing go to the 's' extension. (closes issue #9099) Reported by: kb1_kanobe2 Patches: 20070906__9099.diff.txt uploaded by Corydon76 (license 14)
r931832007-12-17
  • funcs/Makefile, codecs/Makefile, cdr/Makefile, pbx/Makefile, res/Makefile, channels/Makefile, formats/Makefile: fix some copy-and-paste leftovers
r931822007-12-17
  • channels/chan_mgcp.c, channels/chan_zap.c, channels/chan_sip.c, apps/app_queue.c, channels/chan_iax2.c: Issue 11574: Add dependencies on res_monitor and res_features. I wonder if Asterisk can run at all without res_features. My guess is that there's propably a lot of more modules and the core that depends on it. Reported by: caio1982 (closes issue #11574)
r931802007-12-17
  • formats, Makefile, codecs/Makefile, funcs, apps/Makefile, configure, cdr/Makefile, build_tools/prep_tarball, makeopts.in, formats/Makefile, pbx, res, channels, funcs/Makefile, codecs, include/asterisk/autoconfig.h.in, build_tools/make_version, apps, configure.ac, Makefile.moddir_rules, build_tools/prep_moduledeps (removed), res/Makefile, pbx/Makefile, cdr, channels/Makefile: In http://lists.digium.com/pipermail/asterisk-dev/2007-December/031145.html, rizzo brought up some issues related to the way that the metadata required for menuselect and the rest of the build system is extracted from the source files. Since I had a few hours to kill on an airplane today, I decided to improve this situation... so now the system caches the extracted metadata and uses it to build the menuselect 'tree' as much as it can. The result of this is that when a single source file is changed, only the metadata for that file needs to be extracted again, and the rest is used from the cache files. I also reduced the number of forked processes required to do the metadata extraction; it was actually possible to do most of what we needed in the Makefiles themselves without using any shell scripts at all! On my laptop, these changes resulted in an 80% decrease in the time required for the 'menuselect.makeopts' automatic check to occur after editing a single source file. While doing this work I also cleaned up a few minor things in the Makefiles, adding a check for 'awk' to the configure script and changed all remaining places we use 'grep' or 'awk' to use the ones found by the configure script, and changed the 'prep_tarball' script to build the menuselect metadata so that tarballs of Asterisk will include it and won't require the user to wait while it is extracted after unpacking.
r930002007-12-14
  • There are a lot of existing systems that #include non-existent files. So, to make the transition to treating this as an error a bit less painless, just issue a huge error message for now. Then, later, we can reinstate the code that treats it as a failure. (Thanks to philippel for the feedback)
r929372007-12-14
  • Up the length of the format on the SIP channel since it can now be rather long. (closes issue #11552) Reported by: francesco_r
r929342007-12-14
  • fixed the sequencing of WAITING_4DIGS state setting and overlap_task thread starting.
r929332007-12-14
  • Change help documentation to match actual behavior (FAILURE vs FAILED). Reported by: angeloxx-sir Patch by: tilghman (Closes issue #11548)
r928752007-12-14
  • When compiling with DETECT_DEADLOCKS, don't spam the CLI with messages about possible deadlocks. Instead just print the intended single message every five seconds. (closes issue 11537, reported and patched by dimas)
r928152007-12-13
  • Properly initialize polarity statuses, so that they are detected properly. Reported by: julianjm Patch by: julianjm (Closes issue #10238)
r928092007-12-13
  • Make application help text a little more clear about the use of extensions in a filename.
r92803-928072007-12-13
  • Prevent another potential fd leak
  • Prevent a possible fd leak.
r926962007-12-13
  • main/config.c, channels/chan_sip.c, channels/chan_h323.c, channels/chan_iax2.c: If a typo is found in a config file, we previous continued on with what was already loaded. We do not want to do this (see bug below for details). This makes it so that if a [ is found without a ], the entire config will fail, and nothing in it will be loaded. Isue #10690.
r926562007-12-12
  • emit a warning message when we drop a G.729B CNG frame destined for the transcoder
r926172007-12-12
  • Don't increment user count until after name has been recorded (if enabled). Issue 11048, tested by pep.
r925562007-12-12
  • resolve compiler warning
r925102007-12-12
  • Correctly detect where a dynamic feature was activated. Before this patch, the channel which initiated the bridge was always assumed to have been the one which activated the dynamic feature. This patch corrects this. (closes issue #11529, reported and patched by nic_bellamy)
r924632007-12-12
  • Test directly for the API that fixed AST-2007-026, to ensure that older versions of PostgreSQL are no longer acceptable. (Closes issue #11526)
r924432007-12-12
  • Removing an unused variable.
r923632007-12-11
  • Fix potential memory leak with the dialed interfaces list if another memory allocation fails. (closes issue #11507) Reported by: eliel Patches: global_datastores.c.patch uploaded by eliel (license 64)
r923232007-12-11
  • Fixing autofill to be more accurate. Specifically, if calls ahead of the current caller were ringing members (but not yet bridged) there could be available members and waiting callers who would not get matched up. The member availability checker was correctly determining the number of available members in this scenario, but the queue itself did not parallelly reflect this status on the pending calls. This commit corrects the issue. (closes issue #11459, reported by equissoftware, patched by me)
r922042007-12-10
  • Add G729A as another possible payload name for G729. Some devices use this instead of G729, which is perfectly normal since the payload number itself is defined and can't be used by anything else so the name doesn't matter that much. (closes issue #11483) Reported by: revolution Patches: rtp.diff uploaded by revolution (license 346)
r922022007-12-10
  • If there are no members in a queue, then the loop where the datastore for detecting duplicate dialed numbers will be skipped, meaning the datastore isn't created. This means that when we try to free it, there's a crash. This stops that crash from occurring. (closes issue #11499, reported by slavon, patched by eliel)
r922002007-12-10
  • It is possible for nativeformats to contain more then one codec, so print out multiple ones. (closes issue #11366) Reported by: ovi
r921582007-12-10
  • Avoid reinvite race situations with two Asterisks trying to reinvite each other in 1.4 and trunk. This patch implements support for the 491 error code that Asterisk 1.4 generates on situations where we get an incoming INVITE and already has one in progress. Thanks to mavetju for reporting and to Raj Jain for an excellent explanation of the problem. Patch by myself. Tested with 8 Asterisk servers connected to each other in a training network. Closes issue #10481
r918902007-12-07
  • We need to make sure we free the input frame if we return a different frame in ast_dsp_process. Issue 11273, pointed out by dimas, with a patch by eliel.
r918702007-12-07
  • even though Asterisk explicitly requests that endpoints using G.729 do *not
  • use Annex B (silence detection and comfort noise generation) some do anyway; the transcoder card interface does not currently work properly with CNG frames, so trim off the CNG before sending the data
r91777-918302007-12-07
  • Make the lock protecting each thread's list of locks it currently holds recursive. I think that this will fix the situation where some people have said that "core show locks" locks up the CLI. (related to issue #11080)
  • Fix another bug in the DEBUG_THREADS code. The ast_mutex_init() function had the mutex attribute object marked as static. This means that multiple threads initializing locks at the same time could step on each other and end up with improperly initialized locks. (found when tracking down locking issues related to issue #11080)
  • I love fixing lock related errors in the lock debugging code. That's about as ironic as it gets in Asterisk programming land. Anyway, I spotted this bug while trying to track down why systems are locking up and acting weird in issue #11080. The mutex attribute object was marked as static in this function when it should not have been.
  • Add channel locking around datastore operations that expect the channel to be locked.
  • Document why we don't record Local channels in the dialed interfaces list. * Remove the dialed variable as it isn't needed.
  • Restructure some code for clarity and coding guidelines stuff
  • Add channel locking around datastore operations that expect the channel to be locked.
  • Document why we don't record Local channels in the dialed interfaces list. * Handle memory allocation failure.
  • Remove the dialed variable, as it wasn't actually needed.
  • Tweak some formatting to conform to coding guidelines.
  • Add a bit more of a verbose comment as to why a hangup frame needs to be queued up if autoservice gets a NULL return from ast_read().
  • Make the process of queueing the hangup frame more efficient by putting the frame where it is going to end up and avoiding some locking and extra memory allocations and freeing.
r917372007-12-07
  • Hangups that happen during autoservice were not processed appropriately. This is because a hangup actually causes a NULL frame to be received, not a hangup frame. Queueing a hangup if we receive a NULL frame during autoservice corrects this problem (closes issue #11467, reported by jmls, patched by me)
r91675-916932007-12-07
  • Don't unlock the dialed_interfaces list until we're done messing with the iterator.
  • Allow dialing local channels from Queue() and Dial() again. There was a slight flaw in the code to prevent call forwards from looping that caused this problem. (related to issue #11486)
  • Fix in an issue in the call forwarding handling code that was causing crashes on every call into a queue. I'm not entirely sure about the logic in this part of the code, so I want to look at it some more tomorrow. However, this makes it safe and keeps it from crashing. (closes issue #11486, reported by adamg, patched by me)
r916372007-12-07
  • At the end of a call, when we're reporting, RTCP may already be partially torn down, so check for NULL dereference Reported by: blitzrage Patch by: tilghman (Closes issue #11450)
r915412007-12-06
  • IMAP storage did not honor the maxmsg setting in voicemail.conf, and it also had the possibility of crashing if a user had more than 256 messages in their voicemail. This patch kills two birds with one stone by adding maxmsg support and also setting a hard limit on the number of messages at 255 so that the crashes cannot happen. (closes issue #11101, reported by Skavin, patched by me)
r915012007-12-06
  • Add a new module flag to indicate that a build sum is present. Modules built against older Asterisk 1.4 headers will now load properly with just a warning indicating that they are old and may cause problems. (patch by paravoid)
r91439-914502007-12-06
  • Fix various in the udptl implementation. It could return empty modem frames, have an incorrect sequence number on packets, and display the wrong sequence number in the debug messages. (closes issue #11228) Reported by: Cache Patches: udptl-4.patch uploaded by dimas (license 88)
  • Add support for accepting and sending T.38 in the initial INVITE. (closes issue #9402) Reported by: thdei
r913662007-12-06
  • Make sure logger is reloaded at general reload in the cli. (Discovered during Asterisk training in Portugal)
r91273-912922007-12-05
  • Reverting extra stuff I didn't mean to commit
  • The 'G' option for Dial() did not properly handle the case where only a label was provided. This was due to the fact that the answering channel did not have an extension set, so ast_parseable_goto would fail. This fix eliminates the call to ast_parseable_goto on the answering channel since it is a wasteful call. The answering channel and the calling channel are both directed to the same extension and context, just different priorities, so we can just copy the values from the calling channel to the answering channel and increment the answering channel's priority. (closes issue #11382, reported by jon, patch by me with correction by jon)
r912372007-12-05
  • Upgrade to the latest version of extra sounds
r90967-911922007-12-05
  • Make the lock in the threadstorage debugging code untracked to avoid a deadlock on thread destruction. (closes issue #11207) Reported by: ys Patches: threadstorage.c.diff uploaded by ys (license 281) Also fixes an open bug report: (closes issue #11446)
  • When DEBUG_THREADS is enabled, we only have the details about who is holding a lock that we are waiting on for a mutex, not rwlocks. This should fix the problem where people have reported "core show locks" crashing sometimes.
  • Fix some crashes in chan_iax2 that were reported as happening on Mac systems. It turns out that the problem was the Mac version of the ast_atomic_fetchadd_int() function. The Mac atomic add function returns the _new_ value, while this function is supposed to return the old value. So, the crashes happened on unreferencing objects. If the reference count was decreased to 1, ao2_ref() thought that it had been decreased to zero, and called the destructor. However, there was still an outstanding reference around. (closes issue #11176) (closes issue #11289)
  • include/asterisk/file.h, configure, include/asterisk/autoconfig.h.in, configure.ac, include/asterisk/compiler.h: Modify file.h to maintain API compatibility with earlier versions. If a recent compiler is being used, then a warning will show up for any modules still using the old name "private" instead of "_private". (patch suggested by paravoid)
  • Make some changes to some additions I made recently for doing channel autoservice when looking up extensions. This code was added to handle the case where a dialplan switch was in use that could block for a long time. However, the way that I added it, it did this for all extension lookups. However, lookups in the in-memory tree of extensions should _not_ take long enough to matter. So, move the autoservice stuff to be only around executing a switch.
r908762007-12-04
  • If we fail to create a channel after allocating a timing fd, we need to make sure to close it. Issue 11454, patch by eliel.
r907982007-12-04
  • Fix build issue on the build cluster.
r90736-907532007-12-03
  • Solaris requires the inclusion of sys/loadavg.h for getloadavg(). Reported by: snuffy Patch by: snuffy,tilghman (Closes issue #11430)
  • If both dbhost and dbsock were not set, a NULL deref could result Reported by: xrg Patch by: tilghman (Closes issue #11387)
r907352007-12-03
  • apps/app_dial.c, main/channel.c, main/global_datastores.c (added), channels/chan_local.c, main/Makefile, include/asterisk/channel.h, include/asterisk/global_datastores.h (added), apps/app_queue.c: A big one... This is the merge of the forward-loop branch. The main change here is that call-forwards can no longer loop. This is accomplished by creating a datastore on the calling channel which has a linked list of all devices dialed. If a forward happens, then the local channel which is created inherits the datastore. If, through this progression of forwards and datastore inheritance, a device is attempted to be dialed a second time, it will simply be skipped and a warning message will be printed to the CLI. After the dialing has been completed, the datastore is detached from the channel and destroyed. This change also introduces some side effects to the code which I shall enumerate here: 1. Datastore inheritance has been backported from trunk into 1.4 2. A large chunk of code has been removed from app_dial. This chunk is the section of code which handles the call forward case after the channel has been requested but before it has been called. This was removed because call-forwarding still works fine without it, it makes the code less error-prone should it need changing, and it made this set of changes much less painful to just have the forwarding handled in one place in each module. 3. Two new files, global_datastores.h and .c have been added. These are necessary since the datastore which is attached to the channel may be created and attached in either app_dial or app_queue, so they need a common place to find the datastore info. This approach was taken in case similar datastores are needed in the future, there will be a common place to add them.
r906962007-12-03
  • Make sure we always close the conference fd if we have an open one. Issue 11383, reported by markmhy, patch by eliel.
r906392007-12-03
  • Changing some bad logic when calculating the interdigit timeout. (closes issue #11402, reported and patched by eferro)
r906072007-12-03
  • Fix crash in ParkAndAnnounce application. Issue #11436, reported by lytledd, patch by eliel.
r90548-905882007-12-03
  • Do not create a smoother for G723.1 frames, they need to be left alone to their native 20/24 byte size.
  • Preserve the indication currently playing on a channel when a masquerade operation happens. (issue #BE-88)
r905462007-12-03
  • Only log debug messages if debug is enabled. Closes issue #11416, patch by casper.
r904702007-12-02
  • The other day when I went through making changes as a result of the ao2_link() change, I added some code to set pointers to NULL after they were unreferenced. This pointed out that in this place, the object was unreferenced before the code was done using it. So, move the unref down a little bit. (crash reported by jmls on IRC)
r904322007-12-02
  • Clarify the return value on autoservice. Specifically, if you started autoservice and autoservice was already on, it would erroneously return an error. Reported by: adiemus Patch by: dimas (Closes issue #11433)
r90310-903482007-11-30
  • main/astobj2.c, main/manager.c, include/asterisk/astobj2.h, apps/app_queue.c, channels/chan_iax2.c: Change the behavior of ao2_link(). Previously, in inherited a reference. Now, it automatically increases the reference count to reflect the reference that is now held by the container. This was done to be more consistent with ao2_unlink(), which automatically releases the reference held by the container. It also makes it so it is no longer possible for a pointer to be invalid after ao2_link() returns.
  • Add some notes on the behavior of ao2_unlink() after a discussion with Tilghman
r902692007-11-30
  • Fix locking issues under one legged replaces scenarios. (closes issue #11420) Reported by: irroot Patches: chan_sip_oneleg.patch uploaded by irroot (license 52)
r902312007-11-30
  • Clear the DTMF buffer if the call times out. (closes issue #11418, reported and patched by eferro)

Asterisk 1.4.15

VersionDateDescription
r901662007-11-29
  • Properly escape cdr->src and cdr->dst and ensure we use thread-safe escaping (Fixes AST-2007-026)
r901632007-11-29
  • This patch handles the case where a queue member with a negative penalty is added via the manager. If a negative value is submitted for a member penalty, we set it to 0. (closes issue #11411, reported and patched by Laureano)
r90154-901602007-11-29
  • Properly escape input buffers (Fixes AST-2007-025)
  • formats/format_g726.c, include/asterisk/file.h, formats/format_wav.c, formats/format_pcm.c, formats/format_ogg_vorbis.c, main/file.c, formats/format_h263.c, formats/format_h264.c, formats/format_wav_gsm.c: Use of "private" as a field name in a header file messes with C++ projects Reported by: chewbacca Patch by: casper (Closes issue #11401)
  • Upgrade the core sounds release version
r90142-901472007-11-29
  • fix some formatting i accidentally changed
  • funcs/func_callerid.c, main/channel.c, include/asterisk/channel.h: This set of changes is to make some callerID handling thread-safe. The ast_set_callerid() function needed to lock the channel. Also, the handlers for the CALLERID() dialplan function needed to lock the channel when reading or writing callerid values directly on the channel structure.
  • Merge a change from team/russell/chan_refcount ... This makes ast_stopstream() thread-safe.
r901012007-11-28
  • Fix a few memory leaks. (closes issue #11405) Reported by: eliel Patches: load_realtime.patch uploaded by eliel (license 64)
r900982007-11-28
  • it is impossible to set permissions for manager accounts created by users.conf (reported internally, patched by me)
r89999-900592007-11-28
  • Removing some seemingly pointless code. This sets a channel variable for every priority executed in the dialplan if you have debug set to anything non-zero. This seems pointless due to the fact that these channel variables are not referenced anywhere else in the code and their names are esoteric enough that they would not be practical to reference in the dialplan. Plus the fact that this behavior isn't documented anywhere means that the change is not likely to cause any disruption. If anything, this may actually cause a slight performance increase if running with debug on. The motivating influence for this code change is the eventwhencalled option for queues. If set to vars, all channel variables will be output to the manager. These unnecessary channel variables make the output a lot more difficult to deal with.
  • Recording greetings when using IMAP storage was causing zero-length files to be stored. Since greetings are not retrieved from IMAP anyway, it is pointless to attempt storing them there. (closes issue #11359, reported by spditner, patched by me)
r89839-898932007-11-28
  • - update documentation for some of the goto functions to note that they handle locking the channel as needed - update ast_explicit_goto() to lock the channel as needed
  • Don't do frame processing if ast_read() returned NULL.
  • Instead of depending on the return value of ast_true(), explicitly set the eventwhencalled variable to 1.
  • Don't start/stop autoservice in pbx_extension_helper() unless a channel exists
r898372007-11-27
  • Two changes with regards to the 'eventwhencalled' option of queues.conf 1) Due to some signed vs. unsigned silliness, setting 'eventwhencalled' to 'vars' or 'yes' did exactly the same thing. Thus the sign change of the ast_true call. 2) The vars2manager function overwrote a \n for every channel variable it parsed, resulting in bizarre output for the channel variables. This patch remedies this. (related to issue #11385, however I'm not sure if this will actually be enough to close it)
r897902007-11-27
  • Merge changes from team/russell/autoservice_1.4 This set of changes fixes an issue that was reported to me on IRC yesterday. The user, d1mas, was using chan_zap for incoming calls and was having DTMF recognition issues in some situations. Specifically, he noticed that the problem occurred when using DISA or WaitExten. He also noticed that when using Read, the problem did not occur. His system also used DUNDi for dialplan lookups. So, he theorized that if the DUNDi lookups blocked for some period of time, that audio from the zap channel could get lost. If the audio got lost, then it wouldn't be run through the DTMF detector, and digits could get lost. He was correct, and the following set of changes fixes the problem. However, the changes go a little bit further than what was necessary to fix this exact problem. 1) I updated pbx_extension_helper() to autoservice the associated channel to handle cases where extension lookups may take a long time. This would normally be a dialplan switch that does some lookup over the network, such as the DUNDi or IAX2 switches. This ensures that even while a DUNDi lookup is blocking, the channel will be continuously serviced. 2) I made a change to the autoservice code. This is actually something that has bothered me for a long time. When a channel is in autoservice, _all_ frames get thrown away. However, some frames really shouldn't be thrown away. The most notable examples are signalling (CONTROL) frames, and DTMF. So, this patch queues up important frames while a channel is in autoservice. When autoservice is stopped on the channel, the queued up frames get stuck back on the channel so that they can get processed instead of thrown away. 3) I made another change to the autoservice code to handle the case where autoservice is started on channels recursively. Previously, you could call ast_autoservice_start() multiple times on a channel, and it would stop the first time ast_autoservice_stop() gets called. Now, it will ensure that autoservice doesn't actually stop until the final call to ast_autoservice_stop().
r897272007-11-27
  • Changing some calls from free() to ast_free() since they were allocated with ast_calloc(). (closes issue #11390, reported and patched by Laureano)
r89701-897092007-11-27
  • on second thought... revert all the other changes i've made in app options parsing leaving only one: if an empty argument is supplied for an option, set that argument pointer to point to an empty string rather than NULL, so that the application can do normal checks on it without worrying about it being NULL
  • generate a warning when an application option that requires an argument is ignored due to lack of an argument
r896342007-11-27
  • Add a note to the sample voicemail config noting that when using IMAP storage, only the first format specified will be attached to the message.
r896312007-11-27
  • Default result of STAT should be "0" not "". Reported via the -users mailing list, fixed by me.
r89624-896302007-11-27
  • If we get a codec offer using a well-known payload type, but using it for another codec that we don't know, Asterisk did not remove that codec from the list. With this patch, we remove the codec from audio and video rtp objects and deny it ever existed. Thanks to lasse for testing. (closes issue #11376) Reported by: lasse Patches: bug11376.txt uploaded by oej (license 306) Tested by: lasse
  • Clarify limitonpeers=yes (closes issue #11304) Reported by: pj
r896222007-11-27
  • apps/app_dial.c, main/cdr.c, configs/cdr.conf.sample, include/asterisk/cdr.h: closes issue #11379; OK, this is an attempt to make both sides happy. To the cdr.conf file, I added the option 'unanswered', which defaults to 'no'. In this mode, you will see a cdr for a call, whether it was answered or not. The disposition will be NO ANSWER or ANSWERED, as appropriate. The src is as you'd expect, the destination channel will be one of the channels from the Dial() call, usually the last in the list if more than one chan was specified. With unanswered set to 'yes', you will still see this cdr entry in both cases. But in the case where the dial timed out, you will also see a cdr for each line attempted, marked NO ANSWER, with no destination channel name. The new option defaults to 'no', so you don't see the pesky extra cdr's by default, and you will not see the irritating 'not posted' messages.
r89616-896182007-11-26
  • After issuing a "say load new", if a caller hangs up during the middle of playback of a number, app_playback will continue to try to play the remaining files. With this change, no more files will be played back upon hangup. (closes issue #11345, reported and patched by IgorG)
  • After issuing a "say load new" tons of warning messages are printed out to the CLI every time do_say in app_playback is called. Removing these warnings
r89599-896102007-11-26
  • Fix issues with async dialing with an application executing. The application has to be terminated and control returned to the thread before hanging things up. (issue #BE-252)
  • Add module counting removal for error conditions. (closes issue #11333) Reported by: Laureano Patches: res_features_v2.c.patch uploaded by Laureano (license 265)
r895942007-11-26
  • Add channel locking to a function that needed to be doing it. This is just a little something I noticed while working on a completely unrelated issue.
r89587-895922007-11-26
  • Use ast_free to free memory, or else we shall implode if MALLOC_DEBUG is enabled. (closes issue #11347) Reported by: ys Patches: pbx.pbx_config.c.diff uploaded by ys (license 281)
  • Close the audio file before sending it to the post processing application. (closes issue #11357) Reported by: reformed Patches: mixmonitor.patch uploaded by reformed (license 330)
r895862007-11-26
  • when parsing application options that take arguments, don't indicate that the option was supplied unless a non-zero-length argument was found for it
r895802007-11-26
  • Revert vmu->email back to an empty string if it was empty when imap_store_file was called. This prevents sending a duplicate e-mail. (closes issue #11204, reported by spditner, patched by me)
r89571-895772007-11-26
  • If channel allocation fails because the alert pipe could not be created also free the scheduler context. (closes issue #11355) Reported by: eliel Patches: main.channel.c.patch uploaded by eliel (license 64)
  • When unloading app_meetme destroy any auto created contexts created by SLA. (closes issue #11367) Reported by: eliel
r895592007-11-25
  • res/res_odbc.c, configs/res_odbc.conf.sample, include/asterisk/res_odbc.h, res/res_config_odbc.c: We previously attempted to use the ESCAPE clause to set the escape delimiter to a backslash. Unfortunately, this does not universally work on all databases, since on databases which natively use the backslash as a delimiter, the backslash itself needs to be delimited, but on other databases that have no delimiter, backslashing the backslash causes an error. So the only solution that I can come up with is to create an option in res_odbc that explicitly specifies whether or not backslash is a native delimiter. If it is, we use it natively; if not, we use the ESCAPE clause to make it one. Reported by: elguero Patch by: tilghman (Closes issue #11364)
r89534-895452007-11-24
  • Free some frames that would otherwise leak on error. Reported by: Laureano Patch by: Laureano,tilghman (Closes issue #11351)
  • Currently, zero-length voicemail messages cause a hangup in VoicemailMain. This change fixes the problem, with a multi-faceted approach. First, we do our best to avoid these messages from being created in the first place, and second, if that fails, we detect when the voicemail message is zero-length and avoid exiting at that point. Reported by: dtyoo Patch by: gkloepfer,tilghman (Closes issue #11083)
  • Up until this point, the XML output of the manager has been technically invalid, due to the repetition of certain parameters in a single event. This caused various issues for XML parsers, some of which refused to parse at all, given the invalidity of the rendered XML. So this commit fixes the XML output, ensuring that each entity parameter has a unique name, thus ensuring valid XML. Reported by: msetim Patch by: tilghman (Closes issue #10220)
  • Use ESCAPE clause for the first parameter, not just 2nd-Nth parameters. Reported by: apsaras Patch by: tilghman (Closes issue #11353)
r895272007-11-22
  • mvanbaak pointed out a spelling error in this sample configuration file. While I was at it, I went ahead and tweaked it a little bit more.
r89493-894952007-11-21
  • Fix a small error I made in my previous commit
  • Changing an inaccurate debug message to be less inaccurate. Under the circumstances, this message would always report that there were 0 members available, even though that may not be true.
r894912007-11-21
  • If a channel gets masqueraded in the middle of a park, don't play the announcement to the masqueraded channel, and dial back to the original channel on timeout.
r89461-894622007-11-20
  • re-doxygen some comments
  • main/loader.c, include/asterisk/module.h, build_tools/make_buildopts_h: bring back compile-option checking when loading modules, only this time use a string-based storage and comparison mechanism because it is easier to support on other platforms
r894572007-11-20
  • According to comments in main/pbx.c, it is essential that if we are going to lock the conlock as well as the hints lock, it must be locked in that respective order. In order to prevent a potential deadlock, we need to lock the conlock prior to locking the hints lock in ast_hint_state_changed (see the call stack example on issue #11323 for how this can happen). (closes issue #11323, reported by eelcob, suggestion for patch by eelcob, patch by me)
r894502007-11-20
  • closes issue #11324; break statements missing in switch cases.
r894452007-11-20
  • added RR patch from iroot #10908, thanks.
r89416-894192007-11-19
  • Print out the correct filename (features.conf) in the log message when parkpos options are incorrect. (closes issue #11295) Reported by: Laureano Patches: res_features.c.patch uploaded by Laureano (license 265)
  • Clarify documentation a bit, include that a frame has to pass through the core in order for the Local channel optimization to happen. (closes issue #11246) Reported by: jon

Asterisk 1.4.14

VersionDateDescription
r893392007-11-16
  • main/loader.c, include/asterisk/module.h, build_tools/make_buildopts_h: Temporarily revert revision 89325, which added md5 magic for keeping track of what build options were used. We agreed that we should remove this before making a 1.4 release, and then we can put it back in. Then, we can take a month or so to play around with it to get it how we want it.
r893252007-11-16
  • main/loader.c, include/asterisk/module.h, build_tools/make_buildopts_h: To help combat problems where people build external modules (asterisk-addons or others) and then change the build options of the Asterisk build in a way that makes the incompatible without warning, this commit introduces an MD5 signature of the important build-time options and includes that signature into modules when they are built. When the loader loads one of these modules and notices the problem, it will emit a warning to console and refuse to initialize the module, as doing so could cause the system to be unstable or even crash. If you upgrade to this version of Asterisk, you must rebuild *all* of your modules that came from other sources before trying to run this version. If you are using Digium's G.729 binary codec module, you will need v33 or newer.
r893232007-11-16
  • Make realtime queues accessible from the QUEUE_MEMBER_COUNT function. (closes issue #11271, reported and patched by atis, with small modifications from me)
r89298-893022007-11-15
  • Start Asterisk in Debian at a more reasonable time (since zaptel is at level 20)
  • Fix an uninitialized memory read found by valgrind
  • Yet another memory corruption issue. Reported by: atis Patch by: tilghman Fixes issue #10923
r892962007-11-15
  • Update the SLAStation application to account for the case where the SLA thread has a call out to the station, but the user has pressed a line button to answer the call instead of picking up the handset. If they do, the phone sends out a new INVITE. So, the SLAStation app must check to see if it is picking up a ringing trunk, and ensure that the other stations stop ringing. (reported internally, patched by me, tested by mogorman)
r89286-892882007-11-15
  • Undoing previous commit since I realize it was wrong
  • Adding a missing mutex unlock. (closes issue 11256, reported and patched by ys)
r89280-892812007-11-15
  • Don't send re-invites during pending INVITE transactions. Patch by one47 - thanks! Closes issue #9305
  • Improve support for multipart messages. Code by gasparz, changes by me (mostly formatting). Thanks, gasparz! Closes issue #10947
r892752007-11-14
  • When a recording ends with '#', we are improperly trimming an extra 200ms from the recording. Reported by: sim Patch by: tilghman Closes issue #11247
r892602007-11-14
  • Return the proper value when the srv_callback function executes properly. (closes issue #11240) Reported by: jtodd
r89248-892542007-11-13
  • Fix building on newer systems which require a third arg to open() when using O_CREAT. Issue 11238, reported by puzzled.
  • Revert change from revision 67064. It is documented behavior that if a parking extension already exists while using PARKINGEXTEN, dialplan execution will continue. If blind transferring to a Park with PARKINGEXTEN, you must keep this in mind, and handle the failure yourself. Issue 11237, reported by jon.
r892462007-11-13
  • If we set a value for qualify, we should actually pay attention to it, instead of overriding the value
r892412007-11-13
  • Reverting commit made in revision 89205 since it is unnecessary. Thanks to Kevin for pointing this out
r892392007-11-13
  • Debugging is running into the 16-lock limit. Increase to avoid. (This define is only effective when debugging is turned on, so there's no effect for most installations.)
r892052007-11-13
  • Some sanity checking for MixMonitor. If only 1 argument is given, then the args.options and args.post_process strings are uninitialized and could contain garbage. This change handles this situation properly by only using arguments that we have parsed.
r891942007-11-12
  • Fix a typo pointed out by De_Mon on #asterisk-dev
r89184-891912007-11-12
  • If two config writes collide, file corruption could result. Use a mkstemp() file, instead. Reported by: paravoid Patch by: tilghman Closes issue #10781
  • Fix two cases of memory corruption caused by background threads. Reported by: atis Patch by: tilghman Fixes issue #10923
r89169-891732007-11-12
  • if we're NT and no number was dialed and overlapdial is set, we wait for the ISDN timeout instead of starting our own timer. added a comment for the misdn.conf.sample for the overlapdial config option.
  • channels/misdn/isdn_lib.c, channels/misdn/isdn_lib_intern.h, channels/chan_misdn.c, channels/misdn/isdn_msg_parser.c: added restart all interfaces Restart_Indicator, to automatically send a RESTART after the L2 of a PTP Port comes up. Also fixed some places where we have send a RELEASE without need for it.
  • fixed a state/event issue with overlapdial=yes when no extension matched. removed the general sending of a RELEASE_COMPLETE when we receive a RELEASE, this is done by mISDNuser/mISDN. This makes it possible to use asterisk-1.4 with mISDN trunk, but requires users of mISDN/mISDNuser-1.1.X to upgrade to at least mISDNuser-1.1.6 (when using the NT mode at all)
  • fixed the support for CW and therefore for the reject_cause option.
  • channels/misdn/isdn_lib.c, channels/misdn_config.c, channels/misdn/isdn_lib.h, channels/chan_misdn.c, channels/misdn/chan_misdn_config.h, configs/misdn.conf.sample: aded ntkeepcalls option, to avoid droÃpping calls when the L2 goes down on a PTP link. There are some pbx which do turn off the L1 for a very short while and restart it immediately. normally T310 should be started and after 10 seconds or so the calls should be dropped, this is a simple fix wihtout this timer.
r891252007-11-08
  • Properly say the seconds here.. Issue 11203, fix described by vma.
r891192007-11-08
  • Rework of the commit I made yesterday to use the already built-in ast_uri_decode function as opposed to my home-rolled one. Also added comments. Thanks to oej for pointing me in the right direction
r891152007-11-08
  • Avoid warnings on load when using sample configuration files. Issue 11195, patch by eliel.
r891112007-11-08
  • I made this same adjustment in trunk to fix a bug, and it makes sense to do it in 1.4 as well. If an imapfolder is specified in voicemail.conf, don't ever explicitly connect to INBOX since it may not exist.
r891052007-11-08
  • fix a glaring bug in the new SRV record handling that would cause incorrect weight sorting
r891032007-11-08
  • Typo
r89095-891012007-11-08
  • Do not add a sip: to the beginning of the To URI unless needed. (closes issue #10756) Reported by: goestelecom
  • Improve the devicestate logic for multiple devices. If any are available then the extension is considered available. (closes issue #10164) Reported by: nic_bellamy Patches: sip-hinting-svn-branch-1.4.patch uploaded by nic (license 299)
  • Add support for allowing one outgoing transaction. This means if a response comes back out of order chan_sip will still handle it. I dream of a chan_sip with real transaction support. (closes issue #10946) Reported by: flefoll (closes issue #10915) Reported by: ramonpeek (closes issue #9567) Reported by: atca_pres
  • If callerid is configured in sip.conf use that for checking the presence of an extension in the dialplan. (closes issue #11185) Reported by: spditner
r890932007-11-07
  • The member refcount must be incremented, to avoid using it after deallocation. A huge thanks go to lvl- for patiently providing the necessary valgrind output that was necessary to finding this problem of memory corruption. Reported by: lvl- Patch by: tilghman Closes issue #11174
r890902007-11-07
  • This patch makes it possible for SIP phones to dial extensions defined with '#' characters in extensions.conf AND maintain their escaped characters when forming URI's (closes issue #10681, reported by cahen, patched by me, code review by file)
r890882007-11-07
  • In response to 10578, I just ran 1.4 thru valgrind; some of the config leakage I've already fixed, but it doesn't hurt to double check. I found and fixed leaks in res_jabber, cdr_tds, pbx_ael. Nothing major, tho.
r890852007-11-07
  • Fixing a segfault in the manager "core show channels concise" command. (closes issue #11183, reported by arnd and patched by ys)
r890792007-11-07
  • Suppress AEL warnings on load. Reported by: eliel Patch by: eliel Closes issue #11178
r890532007-11-06
  • Fix init_classes() so that classes that actually do have files loaded aren't treated as empty, and immediately destroyed ...
r890462007-11-06
  • Correctly set the total number of channels from a zaptel transcoder board. SPD-49, patch by Matthew Nicholson.
r890452007-11-06
  • We went to the trouble of creating a method of tracking failed trylocks, then never turned it on (oops).
r890422007-11-06
  • Bug fixes to tdd support in zaptel.
r890372007-11-06
  • If someone were to delete the files used by an existing MOH class, and then issue a reload, further use of that class could result in a crash due to dividing by zero. This set of changes fixes up some places to prevent this from happening. (closes issue #10948) Reported by: jcomellas Patches: res_musiconhold_division_by_zero.patch uploaded by jcomellas (license 282) Additional changes added by me.
r890362007-11-06
  • closes issue #8786 - where the [catname](!) and [catname](othercat1,othercat2,...) notation gets dropped across a ConfigUpdate (or any other thing that would cause a config file to be written). While I was at it, I also cleaned up some of the destroy routines to free up comments, which was not being done. Made sure the new struct I introduced is also cleaned up properly at destruction time. My code handles multiple template inclusions. Many thanks to ssokol for his patch, which, while not literally used in the final merge, served as a foundation for the fix.
r88994-890322007-11-06
  • Make it so that if a peer is determined to be unreachable using qualify their devicestate will report back unavailable. (closes issue #11006) Reported by: pj
  • Fix improbable but possible memory leaks in chan_zap. (closes issue #11166) Reported by: eliel Patches: chan_zap.c.patch uploaded by eliel (license 64)
r889312007-11-06
  • Remove some checks to see if locks are initialized from the non-DEBUG_THREADS versions of the lock routines. These are incorrect for a number of reasons: - It breaks the build on mac. - If there is a problem with locks not getting initialized, then the proper fix is to find that place and fix the code so that it does get initialized. - If additional debug code is needed to help find the problem areas, then this type of things should _only_ be put in the DEBUG_THREADS wrappers.
r888622007-11-06
  • update comment to match the state of the code
r888262007-11-05
  • Reworked deadlock avoidance in __ast_read. Restored audio to callback agents. (closes issue #11071, reported by callguy, patched by me, tested by callguy and Ted Brown)
r88709-888052007-11-05
  • After seeing crashes related to channel variables, I went looking around at the ways that channel variables are handled. In general, they were not handled in a thread-safe way. The channel _must_ be locked when reading or writing from/to the channel variable list. What I have done to improve this situation is to make pbx_builtin_setvar_helper() and friends lock the channel when doing their thing. Asterisk API calls almost all lock the channel for you as necessary, but this family of functions did not. (closes issue #10923, reported by atis) (closes issue #11159, reported by 850t)
  • When traversing the list of channel variables here in transmit_invite(), the asterisk channel must be locked, as this data may change at any time. (I have seen numerous reports of crashes related to the handling of channel variables. There are a couple of issues on the bug tracker related to it, but it has also been noted on IRC and mailing lists. So, I am finding and fixing some places where channel variables are handled improperly.)
  • Fix up some indentation.
  • Merge changes from asterisk/team/kpfleming/SRV-priority-handling Previously, the SRV record support in Asterisk was broken. There was no guarantee on what record Asterisk would choose to actually use. This set of changes improves the situation by ensuring that Asterisk will choose the highest priority record.
  • Merge the last bit of changes from asterisk/team/russell/readq-1.4 The issue here is that the channel frame readq handling got broken when the code was converted to use the linked list macros. It caused corruption of the list head and tail pointers. So, I fixed up the usage of the linked list macros and in passing, simplified the code. I also documented what the code is doing, as it was a bit difficult to figure out at first. This bug showed itself with crashes showing messed up head/tail pointers for the readq. However, there are a couple of crashes that aren't quite as obvious, but I think may be related. So, if your bug gets closed by this commit, but you still have a problem, please reopen or create a new bug report. (closes issue #10936) (closes issue #10595) (closes issue #10368) (closes issue #11084) (closes issue #10040) (closes issue #10840)
r886712007-11-05
  • If a SIP channel is put on hold multiple times do not keep incrementing the onHold value. (closes issue #11085) Reported by: francesco_r Tested by: blitzrage (closes issue #10474) Reported by: acennami
r886242007-11-05
  • Fix up datastore handling in ast_do_masquerade(). The code is intended to move any channel datastores from the old channel to the new one. However, it did not use the linked list macros properly to accomplish the task. The existing code would only work if there was only a single datastore on the old channel.
r885852007-11-05
  • Make sure we destroy the config structure on configuration failure. Issue 11163, patch by eliel.
r885392007-11-05
  • Don't check used pooled connections for connection status, as it will cause issues for prepared queries. Reported by: Nick Gorham (via -dev list) Patch by: tilghman
r884712007-11-04
  • include/asterisk/stringfields.h, main/channel.c, apps/app_meetme.c, channels/chan_sip.c, channels/chan_iax2.c: Rename ast_string_field_free_pool to ast_string_field_free_memory, and ast_string_field_free_all to ast_string_field_reset_all to avoid misuse (due to too similar names and an error in documentation). Fix two related memory leaks in app_meetme. No need to merge to trunk, different fix already applied there. Not applicable to 1.2
r88328-883662007-11-02
  • Make subscribecontext behave as advertised. It will now look for the presence of a hint in the given context (be it subscribecontext or context). (closes issue #10702) Reported by: slavon
  • If an INFO request within a dialog is received with a content length of 0 simply send back a 200 OK. It is valid to do this and the remote side is probably using it to make sure the signalling is still alive. (closes issue #5747) Reported by: chandi Patches: infofix-81430-1.patch uploaded by IgorG (license 20)
r882832007-11-02
  • We need to make sure to specify a language to ast_fileexists, otherwise it may fail for anything besides en Issue 11147, fix discovered by both citats and myself (independently), with input from Corydon76
r88116-882102007-11-02
  • Fix build on Solaris Reported by: snuffy Patch by: ys Closes issue #11143
  • Add some notes on using valgrind
r880782007-11-01
  • Make sure we set the poll fds to NULL after free()ing it. Part of issue 11017, patch by tzafrir.
r87970-880262007-11-01
  • Fix up commit for my Zap channel with spies in Meetme fix. (thanks Tony Mountifield!)
  • If a Zap channel contains a spy or a spy is added take it out of the conference in kernel space and make it go through Asterisk so the spy gets audio from both sides. (closes issue #10060) Reported by: mparker
r87906-879082007-10-31
  • Make sure we free some allocated memory before returning. Issue 11131, patch by eliel.
  • Don't try to allocate memory that we're just going to re-allocate later anyways. Issue 11130, patch by eliel.
r878522007-10-31
  • Create samples for ALL of the available options in asterisk.conf
r87775-878492007-10-31
  • closes issue #11108 -- where the 'dialplan save' cli command saves a file where the semicolon is not escaped. Fixed this; User also wanted comments to be preserved across dialplan save, but this is impossible at this point in time, because comments are not stored in the dialplan. They are 'compiled' out of extensions.conf. The only way to preserve those comments is to use the config file reader/writer that the GUI uses to allow online user edits. extensions.conf is first and foremost, a config file, and is read in by the normal config-file reading routines. Then, it is processed into a dialplan (context/exten structs).
  • Included some verbage in the check_includes func, to inform the user that included contexts that have no match in the AEL, might be OK, as AEL cannot check in the extensions.conf or the in-memory contexts, as they may not be there at the time of the check.
r877392007-10-30
  • Fix for uninitialized mutexes on *BSD Reported by: ys Fixed by: ys Closes issue #11116
r876862007-10-30
  • Merge the changes from team/russell/iax2_poke_fix and iax2-poke-fix-trunk There was a race condition related to the handling of POKEing peers. Essentially, a reference to a peer is held by the scheduler when there are pending callbacks, but the reference count didn't reflect it. So, it was possible for a peer to hit a reference count of zero and have its destructor begin to be called at the same time that the scheduler thread ran a POKE related callback. If that happened, a crash would likely occur. (closes issue #11082, closes issue #11094)
r876502007-10-30
  • Only try to clean out h323/ if the h323/Makefile exists.
r875712007-10-30
  • Add two more checks before printing out a warning message about bridging. If either channel has hungup of course the bridge will have failed. (closes issue #10009) Reported by: dimas
r875672007-10-30
  • Fix build of editline on Solaris. Issue 11113, patch by snuffy.
r875342007-10-30
  • Return 1.4 to a state where it builds. Changing the arguments to a function and not changing where they are used is bad, mmmk?
r875142007-10-30
  • Fix issue where the recorded name wasn't getting removed correctly. (closes issue #11115) Reported by: davevg Patches: followme-v3.diff
r87460-874652007-10-29
  • missed one directory
  • codecs/ilbc, formats, utils/Makefile, agi/Makefile, funcs, codecs/lpc10, main/db1-ast, main/editline, main, codecs/ilbc/Makefile, pbx, res, channels, main/db1-ast/Makefile, codecs/lpc10/Makefile, utils, codecs, agi, main/editline/Makefile.in, apps, Makefile.moddir_rules, cdr: clean up (and ignore) assembler and preprocessor intermediate files if any are created during the build
  • don't put '-pipe' into ASTCFLAGS if '-save-temps' is already there (used when debugging preprocessor issues) because the compiler will whine about each compile command
r874272007-10-29
  • Removing a completely unnecessary quota check from IMAP code.
r87373-873962007-10-29
  • Add some more details to the output of "core show locks". When a thread is waiting for a lock, this will now show the details about who currently has it locked. (inspired by issue #11100)
  • Remove a lock that doesn't make any sense. The regions lock needs to be held when traversing the list of allocated chunks so that they can be printed out to the CLI. (Thanks to eliel on #asterisk-dev for pointing this out!)
r873422007-10-29
  • Fix issue where if both sides of the dialog cancelled the dialog at the sam