[asterisk-commits] bebuild: tag 1.8.20.0-rc1 r377514 - /tags/1.8.20.0-rc1/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Sun Dec 9 19:48:04 CST 2012
Author: bebuild
Date: Sun Dec 9 19:48:00 2012
New Revision: 377514
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=377514
Log:
Importing files for 1.8.20.0-rc1 release.
Added:
tags/1.8.20.0-rc1/.lastclean (with props)
tags/1.8.20.0-rc1/.version (with props)
tags/1.8.20.0-rc1/ChangeLog (with props)
Added: tags/1.8.20.0-rc1/.lastclean
URL: http://svnview.digium.com/svn/asterisk/tags/1.8.20.0-rc1/.lastclean?view=auto&rev=377514
==============================================================================
--- tags/1.8.20.0-rc1/.lastclean (added)
+++ tags/1.8.20.0-rc1/.lastclean Sun Dec 9 19:48:00 2012
@@ -1,0 +1,1 @@
+40
Propchange: tags/1.8.20.0-rc1/.lastclean
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tags/1.8.20.0-rc1/.lastclean
------------------------------------------------------------------------------
svn:keywords = none
Propchange: tags/1.8.20.0-rc1/.lastclean
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: tags/1.8.20.0-rc1/.version
URL: http://svnview.digium.com/svn/asterisk/tags/1.8.20.0-rc1/.version?view=auto&rev=377514
==============================================================================
--- tags/1.8.20.0-rc1/.version (added)
+++ tags/1.8.20.0-rc1/.version Sun Dec 9 19:48:00 2012
@@ -1,0 +1,1 @@
+1.8.20.0-rc1
Propchange: tags/1.8.20.0-rc1/.version
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tags/1.8.20.0-rc1/.version
------------------------------------------------------------------------------
svn:keywords = none
Propchange: tags/1.8.20.0-rc1/.version
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: tags/1.8.20.0-rc1/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/1.8.20.0-rc1/ChangeLog?view=auto&rev=377514
==============================================================================
--- tags/1.8.20.0-rc1/ChangeLog (added)
+++ tags/1.8.20.0-rc1/ChangeLog Sun Dec 9 19:48:00 2012
@@ -1,0 +1,43462 @@
+2012-12-10 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.20.0-rc1 Released.
+
+2012-12-10 01:38 +0000 [r377487-377509] Tilghman Lesher <tilghman at meg.abyt.es>
+
+ * main/xmldoc.c: Improve documentation by making all of the colors
+ used readable, no matter what the background color is. Dark blue
+ on a black background is unreadable, as is yellow on a light
+ background. This patch turns on the bright attribute for colors
+ when on a dark background and turns *off* the bright attribute
+ when the -W command line option is used (indicating a _light_
+ background). This ensures that text is readable in both cases.
+ Patch by: tilghman Review:
+ https://reviewboard.asterisk.org/r/2224
+
+ * addons/cdr_mysql.c: Remove some dead code and additionally handle
+ a case that wasn't handled.
+
+2012-12-08 00:28 +0000 [r377398-377431] Richard Mudgett <rmudgett at digium.com>
+
+ * contrib/realtime/mysql/sippeers.sql: Fix order of SIP
+ allow/disallow in MySQL contrib script. Using the contrib
+ sippeers.sql script to create the sippeers MySQL table would
+ result in being unable to place calls if you set the disallow
+ value to all. (closes issue ASTERISK-20756) Reported by: Andre
+ Luis Patches: sippeers.patch patch uploaded by Andre Luis
+
+ * main/astmm.c: MALLOC_DEBUG: Only wait if we want atexit
+ allocation dumps.
+
+2012-12-05 16:48 +0000 [r377257] Joshua Colp <jcolp at digium.com>
+
+ * channels/chan_sip.c: Fix a SIP request memory leak with TLS
+ connections. During the TLS re-work in chan_sip some TLS specific
+ code was moved into a separate function. This function operates
+ on a copy of the incoming SIP request. This copy was never
+ deinitialized causing a memory leak for each request processed.
+ This function is now given a SIP request structure which it can
+ use to copy the incoming request into. This reduces the amount of
+ memory allocations done since the internal allocated components
+ are reused between packets and also ensures the SIP request
+ structure is deinitialized when the TLS connection is torn down.
+ (closes issue ASTERISK-20763) Reported by: deti
+
+2012-12-05 16:46 +0000 [r377256] Jonathan Rose <jrose at digium.com>
+
+ * res/res_srtp.c: res_srtp: Fix a crash caused by srtp_dealloc on
+ an already dealloced session When srtp_create fails, the session
+ may be dealloced or just not alloced. At the same time though,
+ the session pointer might not be set to NULL in this process and
+ attempting to srtp_dealloc it again will cause a segfault. This
+ patch checks for failure of srtp_create and sets the session
+ pointer to NULL if it fails. (closes issue ASTERISK-20499)
+ Reported by: tootai Review:
+ https://reviewboard.asterisk.org/r/2228/
+
+2012-12-03 22:51 +0000 [r377037-377165] Richard Mudgett <rmudgett at digium.com>
+
+ * main/asterisk.c: Cleanup ast_run_atexits() atexits list. *
+ Convert atexits list to a mutex instead of a rd/wr lock. The lock
+ is only write locked. * Move CLI verbose Asterisk ending message
+ to where AMI message is output in really_quit() to avoid further
+ surprises about using stuff already shutdown. (issue
+ ASTERISK-20649) Reported by: Corey Farrell
+
+ * include/asterisk/_private.h, main/stdtime/localtime.c,
+ main/asterisk.c: Cleanup core main on exit. * Cleanup time zones
+ on exit. * Make exit clean/unclean report consistent for AMI and
+ CLI in really_quit(). (issue ASTERISK-20649) Reported by: Corey
+ Farrell Patches: core-cleanup-1_8-10.patch (license #5909) patch
+ uploaded by Corey Farrell core-cleanup-11-trunk.patch (license
+ #5909) patch uploaded by Corey Farrell Modified
+
+ * main/config.c: Cleanup config cache on exit. (issue
+ ASTERISK-20649) Reported by: Corey Farrell Patches:
+ config-cleanup-all.patch (license #5909) patch uploaded by Corey
+ Farrell
+
+ * main/cli.c: Cleanup CLI resources on exit and CLI command
+ registration errors. (issue ASTERISK-20649) Reported by: Corey
+ Farrell Patches: cli-leaks-1_8-10.patch (license #5909) patch
+ uploaded by Corey Farrell cli-leaks-11-trunk.patch (license
+ #5909) patch uploaded by Corey Farrell Modified
+
+ * main/cdr.c: Cleanup CDR resources on exit. * Simplify do_reload()
+ return handling since it never returned anything other than 0.
+ (issue ASTERISK-20649) Reported by: Corey Farrell Patches:
+ cdr-cleanup-1_8.patch (license #5909) patch uploaded by Corey
+ Farrell cdr-cleanup-10-11-trunk.patch (license #5909) patch
+ uploaded by Corey Farrell Modified
+
+ * main/ccss.c: Fix CCSS CLI commands and logger level not
+ unregistered. (issue ASTERISK-20649) Reported by: Corey Farrell
+ Patches: ccss-cleanup-all.patch (license #5909) patch uploaded by
+ Corey Farrell
+
+2012-11-30 21:30 +0000 [r376950] Richard Mudgett <rmudgett at digium.com>
+
+ * channels/misdn/isdn_lib.c: chan_misdn: Fix sending
+ RELEASE_COMPLETE in response to SETUP. Fix sending a
+ RELEASE_COMPLETE in response to a SETUP if chan_misdn does not
+ have a B channel available to assign to the call. (closes issue
+ ABE-2869) Reported by: Guenther Kelleter Patches:
+ setup-reject_2.diff (license #6372) patch uploaded by Guenther
+ Kelleter Modified ........ Merged revision 376949 from
+ https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier
+
+2012-11-30 17:04 +0000 [r376919] Sean Bright <sean at malleable.com>
+
+ * funcs/func_volume.c: Minor spelling fix to the VOLUME
+ documentation.
+
+2012-11-30 16:12 +0000 [r376901] Mark Michelson <mmichelson at digium.com>
+
+ * channels/chan_sip.c: Fix potential crashes during SIP attended
+ transfers. The principal behind this patch is simple. During a
+ transfer, we manipulate channels that are owned by a separate
+ thread than the one we currently are running in, so it makes
+ sense that we need to grab a reference to the channels so that
+ they cannot disappear out from under us. In the wild, crashes
+ were sometimes seen when the transferring party would hang up the
+ call before the transfer target answered the call. The most
+ common place to see the crash occur was when attempting to send a
+ connected line update to the transferer channel. (closes issue
+ ASTERISK-20226) Reported by Jared Smith Patches:
+ ASTERISK-20226.patch uploaded by Mark Michelson (License #5049)
+ Tested by: Jared Smith
+
+2012-11-29 22:55 +0000 [r376864-376868] Richard Mudgett <rmudgett at digium.com>
+
+ * channels/chan_local.c: chan_local: Fix local_pvt ref leak in
+ local_devicestate(). Regression introduced by ASTERISK-20390 fix.
+ (closes issue ASTERISK-20769) Reported by: rmudgett Tested by:
+ rmudgett
+
+ * channels/chan_sip.c: Fix compile error. (issue ASTERISK-20724)
+
+2012-11-29 21:49 +0000 [r376834] Michael L. Young <elgueromexicano at gmail.com>
+
+ * channels/chan_sip.c: Improve Code Readability And Fix Setting
+ natdetected Flag For 1.8, 10, 11 and trunk we are are improving
+ the code readability. For 11 and trunk, auto nat detection was
+ added. The natdetected flag was being set to 1 when the host
+ address in the VIA header did not specifiy a port. This patch
+ fixes this by setting the port on the temporary sock address used
+ to SIP_STANDARD_PORT in order for the sock address comparison to
+ work properly. (closes issue ASTERISK-20724) Reported by: Michael
+ L. Young Patches: asterisk-20724-set-port-v2.diff uploaded by
+ Michael L. Young (license 5026) Review:
+ https://reviewboard.asterisk.org/r/2206/
+
+2012-11-29 00:42 +0000 [r376758-376788] Richard Mudgett <rmudgett at digium.com>
+
+ * main/astmm.c, main/asterisk.c: Add MALLOC_DEBUG atexit unreleased
+ malloc memory summary. * Adds the following CLI commands to
+ control MALLOC_DEBUG reporting of unreleased malloc memory when
+ Asterisk is shut down. memory atexit list on memory atexit list
+ off memory atexit summary byline memory atexit summary byfunc
+ memory atexit summary byfile memory atexit summary off * Made
+ check all remaining allocated region blocks atexit for fence
+ violations. * Increased the allocated region hash table size by
+ about three times. It still isn't large enough considering the
+ number of malloced blocks Asterisk uses. * Made CLI "memory show
+ allocations anomalies" use regions_check_all_fences(). Review:
+ https://reviewboard.asterisk.org/r/2196/
+
+ * main/astmm.c: Enhance MALLOC_DEBUG CLI commands. * Fixed CLI
+ "memory show allocations" misspelling of anomalies option. The
+ command will still accept the original misspelling. *
+ Miscellaneous tweaks to CLI "memory show allocations" command
+ output format. * Made CLI "memory show summary" summarize by line
+ number instead of by function if a filename is given. * Made CLI
+ "memory show summary" sort its output by filename or
+ function-name/line-number depending upon request. * Miscellaneous
+ tweaks to CLI "memory show summary" command output format.
+
+2012-11-28 16:23 +0000 [r376725] Jonathan Rose <jrose at digium.com>
+
+ * main/manager.c: manager: Make challenge work with
+ allowmultiplelogin=no Prior to this patch, challenge would yield
+ a multiple logins error if used without providing the username
+ (which isn't really supposed to be an argument to challenge) if
+ allowmultiplelogin was set to no because allowmultiplelogin finds
+ a user with a zero length login name. This check is simply
+ disabled for the challenge action when the username is empty by
+ this patch. (closes issue ASTERISK-20677) Reported by: Vladimir
+ Patches: challenge_action_nomultiplelogin.diff uploaded by
+ Jonathan Rose (license 6182)
+
+2012-11-27 23:47 +0000 [r376627-376688] Richard Mudgett <rmudgett at digium.com>
+
+ * UPGRADE.txt, main/pbx.c: Fix extension matching with the '-'
+ char. The '-' char is supposed to be ignored by the dialplan
+ extension matching. Unfortunately, it's treatment is not handled
+ consistently throughout the extension matching code. * Made the
+ old exten matching code consistently ignore '-' chars. * Made the
+ old exten matching code consistently handle case in the matching.
+ * Made ignore empty character sets. * Fixed ast_extension_cmp()
+ to return -1, 0, or 1 as documented. The only user of it in
+ pbx_lua.c was testing for -1. It was originally returning the
+ strcmp() value for less than which is not usually going to be -1.
+ * Fix character set sorting if the sets have the same number of
+ characters and start with the same character. Character set [0-9]
+ now sorts before [02-9a] as originally intended. * Updated some
+ extension label and priority already in use warnings to also
+ indicate if the extension is aliased. (closes issue
+ ASTERISK-19205) Reported by: Philippe Lindheimer, Birger "WIMPy"
+ Harzenetter Tested by: rmudgett Review:
+ https://reviewboard.asterisk.org/r/2201/
+
+ * pbx/pbx_dundi.c, addons/res_config_mysql.c,
+ apps/app_celgenuserevent.c: Remove unnecessary channel module
+ references. * Removed call to ast_module_user_hangup_all() in
+ res_config_mysql.c since it is effectively a noop. No channels
+ can attach a reference to that module. * Removed call to
+ ast_module_user_hangup_all() in app_celgenuserevent.c. The caller
+ of unload_module() has already called it. * Removed redundant
+ channel module references in pbx_dundi.c. The registered dialplan
+ function callback dispatchers for the read/read2/write callbacks
+ already reference the module before calling. * pbx_dundi: Moved
+ unregistering CLI commands, DUNDi switch, and dialplan functions
+ to the first thing the unload_module() does. This will reduce the
+ chance of new channels using DUNDi services while the module is
+ being torn down.
+
+ * include/asterisk/linkedlists.h: Made AST_LIST_REMOVE() simpler
+ and use better names. * Update doxygen of AST_LIST_REMOVE().
+
+2012-11-22 23:51 +0000 [r376586] Matthew Jordan <mjordan at digium.com>
+
+ * include/asterisk/lock.h, main/lock.c, main/logger.c:
+ Re-initialize logmsgs mutex upon logger initialization to prevent
+ lock errors Similar to the patch that moved the fork earlier in
+ the startup sequence to prevent mutex errors in the recursive
+ mutex surrounding the read/write thread registration lock, this
+ patch re-initializes the logmsgs mutex. Part of the start up
+ sequence before forking the process into the background includes
+ reading asterisk.conf; this has to occur prior to the call to
+ daemon in order to read startup parameters. When reading in a
+ conf file, log statements can be generated. Since this can't be
+ avoided, the mutex instead is re-initialized to ensure a reset of
+ any thread tracking information. This patch also includes some
+ additional debugging to catch errors when locking or unlocking
+ the recursive mutex that surrounds locks when the DEBUG_THREADS
+ build option is enabled. DO_CRASH or THREAD_CRASH will cause an
+ abort() if a mutex error is detected. (issue ASTERISK-19463)
+ Reported by: mjordan Tesetd by: mjordan
+
+2012-11-20 16:45 +0000 [r376521] Mark Michelson <mmichelson at digium.com>
+
+ * channels/sip/include/sip.h, channels/chan_sip.c: Add "Require:
+ timer" to 200 OK responses when appropriate. The method by which
+ the Require header is added to 200 responses is inspired by the
+ method that Olle Johansson uses in his darjeeling-prack branch.
+ (closes issue ASTERISK-20570) Reported by Matt Jordan, at the
+ behest of Olle Johansson Review:
+ https://reviewboard.asterisk.org/r/2172
+
+2012-11-19 19:30 +0000 [r376469] Walter Doekes <walter+asterisk at wjd.nu>
+
+ * main/indications.c, channels/chan_sip.c, main/security_events.c:
+ Fix most leftover non-opaque ast_str uses. Instead of calling
+ str->str, one should use ast_str_buffer(str). Same goes for
+ str->used as ast_str_strlen(str) and str->len as
+ ast_str_size(str). Review:
+ https://reviewboard.asterisk.org/r/2198
+
+2012-11-18 20:11 +0000 [r376428] Matthew Jordan <mjordan at digium.com>
+
+ * main/utils.c, main/stdtime/localtime.c, main/asterisk.c: Reorder
+ startup sequence to prevent lockups when process is sent to
+ background Although it is very rare and timing dependent, the
+ potential exists for the call to 'daemon' to cause what appears
+ to be a deadlock in Asterisk during startup. This can occur when
+ a recursive mutex is obtained prior to the daemon call executing.
+ Since daemon uses fork to send the process into the background,
+ any threading primitives are unsafe to re-use after the call.
+ Implementations of pthread recursive mutexes are highly likely to
+ store the thread identifier of the thread that previously
+ obtained the mutex. If the mutex was locked prior to the fork, a
+ subsequent unlock operation will potentially fail as the thread
+ identifier is no longer valid. Since the mutex is still locked,
+ all subsequent attempts to grab the mutex by other threads will
+ block. This behavior exhibited itself most often when
+ DEBUG_THREADS was enabled, as this compile time option surrounds
+ the mutexes in Asterisk with another recursive mutex that
+ protects the storage of thread related information. This made it
+ much more likely that a recursive mutex would be obtained prior
+ to daemon and unlocked after the call. This patch does the
+ following: a) It backports a patch from Asterisk 11 that prevents
+ the spawning of the localtime monitoring thread. This thread is
+ now spawned after Asterisk has fully booted. b) It re-orders the
+ startup sequence to call daemon earlier during Asterisk startup.
+ This limits the potential of threading primitives being accessed
+ by initialization calls before daemon is called. c) It removes
+ calls to ast_verbose/ast_log/etc. prior to daemon being called.
+ Developers should send error messages directly to stderr prior to
+ daemon, as calls to ast_log may access recursive mutexes that
+ store thread related information. d) It reorganizes when thread
+ local storage is created for storing lock information during the
+ creation of threads. Prior to this patch, the read/write lock
+ protecting the list of threads in ast_register_thread would
+ utilize the lock in the thread local storage prior to it being
+ initialized; this patch prevents that. On a very related note,
+ this patch will *greatly* improve the stability of the Asterisk
+ Test Suite. Review: https://reviewboard.asterisk.org/r/2197
+ (closes issue ASTERISK-19463) Reported by: mjordan Tested by:
+ mjordan
+
+2012-11-16 19:31 +0000 [r376389] Jonathan Rose <jrose at digium.com>
+
+ * res/res_monitor.c: monitor: prevent attempts to move/remove
+ recordings skipped with 'i' and 'o'. The i and o options for
+ monitor skip the input and output sides of a recording
+ respectively. This patch addresses a problem in those options
+ when monitor is called without specifying a specific filename
+ where monitor will try to move the recording that was skipped.
+ Since this usually doesn't exist when these options are used, it
+ would produce a warning when it does this in most cases, but it
+ is conceivable that there are use cases where this could result
+ in moving/removing a file unintentionally. (closes issue
+ ASTERISK-20641) Reported by: Jonathan Rose Review:
+ https://reviewboard.asterisk.org/r/2190/
+
+2012-11-15 23:58 +0000 [r376340] David M. Lee <dlee at digium.com>
+
+ * utils/extconf.c: Fixed extconf.c breakage introduced in r376306.
+ To quote wdoekes: > Note that I'm not confirming legitimacy of
+ having that file in tree at > all. Is anyone using
+ aelparse/conf2ael?
+
+2012-11-15 22:40 +0000 [r376307] Jonathan Rose <jrose at digium.com>
+
+ * apps/app_meetme.c: app_meetme: Fix channels lingering when hung
+ up under certain conditions Channels would get stuck and MeetMe
+ would repeatedly display an Unable to write frame to channel
+ error in the conf_run function if hung up during certain sound
+ prompts such as during user count announcements. This patch fixes
+ that by reintroducing a hangup check in the meetme's main loop
+ (also in conf_run). (closes issue ASTERISK-20486) Reported by:
+ Michael Cargile Review: https://reviewboard.asterisk.org/r/2187/
+ Patches: meetme_hangup_patch_ASTERISK-20486_v3.diff uploaded by
+ Jonathan Rose (license 6182)
+
+2012-11-15 22:27 +0000 [r376306] David M. Lee <dlee at digium.com>
+
+ * tests/test_hashtab_thrash.c (added), utils/hashtest2.c (removed),
+ include/asterisk/hashtab.h, utils/Makefile,
+ tests/test_astobj2_thrash.c (added), utils/utils.xml,
+ utils/hashtest.c (removed): Migrate hashtest/hashtest2 to be unit
+ tests. Both hashtest and hashtest2 are manual testing apps that
+ thrash hash tables (hashtab and ao2 containers, respectively), by
+ spinning up several threads that randomly insert, delete, lookup
+ and iterate over the hash table. If the app doesn't crash, the
+ hash table probably passes the test. Those utils are not a part
+ of the typical Asterisk build, so they do not usually get
+ compiled. This all makes them less that useful. This patch
+ removes those manual test programs and replaces them with
+ Asterisk unit test modules (test_{hashtab,astobj2}_thrash.so). It
+ also attempts to make the tests more deterministic. * Rather than
+ spinning up some number of threads that operate on the hash table
+ randomly, spin up four threads that concurrenly add, remove,
+ lookup and iterate over the hash table. * Each thread checks the
+ state of the hash table both during and after execution, and
+ indicates a test failure if things are not as expected. * Each
+ thread times out after 60 seconds to prevent deadlocking the unit
+ test run. (closes issue ASTERISK-20505) Reported by: Matt Jordan
+ Review: https://reviewboard.asterisk.org/r/2189/
+
+2012-11-15 01:43 +0000 [r376262] Rusty Newton <rnewton at digium.com>
+
+ * apps/app_voicemail.c: Patch to play correct sound file when a
+ voicemail's urgent status is removed We were attempting to play
+ "vm-urgent-removed", which didn't exist. Now we play
+ "vm-marked-nonurgent" which exists and is the correct sound file.
+ Previous behavior was silence and a warning on the CLI. (issue
+ ASTERISK-20280) (closes issue ASTERISK-20280) Reported by: Tomo
+ Takebe Tested by: Rusty Newton Patches: asterisk20280.patch
+ uploaded by Rusty Newton (license 5829)
+
+2012-11-14 19:48 +0000 [r376232] Richard Mudgett <rmudgett at digium.com>
+
+ * pbx/pbx_spool.c: Fix call files when astspooldir is relative.
+ Future dated call files are ignored when astspooldir is relative
+ to the current directory. The queue_file() assumed that the qdir
+ needed to be prepended if the given filename did not start with a
+ '/'. If astspooldir is relative it is not going to start from the
+ root directory obviously so it will not start with a '/'. The
+ filename used in queue_file() ultimately results in qdir
+ prepended multiple times. * Made queue_file() not prepend qdir if
+ the filename contains a '/'. (closes issue ASTERISK-20593)
+ Reported by: James Le Cuirot Patches:
+ 0004-Fix-future-call-files-from-relative-directories.patch
+ (license #6439) patch uploaded by James Le Cuirot
+
+2012-11-13 18:10 +0000 [r376199] Brent Eagles <beagles at digium.com>
+
+ * main/channel.c: Patch to prevent stopping the active generator
+ when it is not the silence generator. This patch introduces an
+ internal helper function to safely check whether the current
+ generator is the one that is expected before deactivating it. The
+ current externally accessible ast_channel_stop_generator()
+ function has been modified to be implemented in terms of the new
+ function. (closes issue ASTERISK-19918) Reported by: Eduardo Abad
+
+2012-11-12 20:44 +0000 [r376166] Joshua Colp <jcolp at digium.com>
+
+ * main/pbx.c: Properly check if the "Context" and "Extension"
+ headers are empty in a ShowDialPlan action. The code which
+ handles the ShowDialPlan action wrongly assumed that a non-NULL
+ return value from the function which retrieves headers from an
+ action indicates that the header has a value. This is incorrect
+ and the contents must be checked to see if they are blank.
+ (closes issue ASTERISK-20628) Reported by: jkroon Patches:
+ asterisk-showdialplan-incorrect-error.patch uploaded by jkroon
+
+2012-11-12 20:13 +0000 [r376142] Michael L. Young <elgueromexicano at gmail.com>
+
+ * main/pbx.c: Fix Dynamic Hints Variable Substition - Underscore
+ Problem When adding a dynamic hint, if an extension contains an
+ underscore no variable subsitution is being performed. This patch
+ changes from checking if the extension contains an underscore to
+ checking if the extension begins with an underscore. (closes
+ issue ASTERISK-20639) Reported by: Steven T. Wheeler Tested by:
+ Steven T. Wheeler, Michael L. Young Patches:
+ asterisk-20639-dynamic-hint-underscore.diff uploaded by Michael
+ L. Young (license 5026) Review:
+ https://reviewboard.asterisk.org/r/2188/
+
+2012-11-08 21:56 +0000 [r376087] Mark Michelson <mmichelson at digium.com>
+
+ * res/res_fax.c: Fix a "set but not used" warning on newer gccs.
+ Turns out the "helpful" setting of ms and res in this macro is
+ completely useless after the timeout antipattern fix. If you're a
+ new guy looking to write code, don't write a macro like this one.
+
+2012-11-08 21:05 +0000 [r376029-376058] Richard Mudgett <rmudgett at digium.com>
+
+ * channels/sig_ss7.c: chan_dahdi/SS7: Made reject incoming call for
+ an in-alarm or blocked channel. If a SS7 call comes in requesting
+ a CIC that is in-alarm, the call is accepted and connects if the
+ extension exists in the dialplan. The call does not have any
+ audio. * Made release the call immediately with circuit
+ congestion cause. (closes issue ASTERISK-20204) Reported by: Tuan
+ Le Patches: jira_asterisk_20204_v1.8.patch (license #5621) patch
+ uploaded by rmudgett
+
+ * main/utils.c, main/astmm.c, main/asterisk.c,
+ include/asterisk/utils.h, include/asterisk/astmm.h: Add
+ MALLOC_DEBUG enhancements. * Makes malloc() behave like calloc().
+ It will return a memory block filled with 0x55. A nonzero value.
+ * Makes free() fill the released memory block and boundary
+ fence's with 0xdeaddead. Any pointer use after free is going to
+ have a pointer pointing to 0xdeaddead. The 0xdeaddead pointer is
+ usually an invalid memory address so a crash is expected. * Puts
+ the freed memory block into a circular array so it is not reused
+ immediately. * When the circular array rotates out a memory block
+ to the heap it checks that the memory has not been altered from
+ 0xdeaddead. * Made the astmm_log message wording better. * Made
+ crash if the DO_CRASH menuselect option is enabled and something
+ is found. * Fixed a potential alignment issue on 64 bit systems.
+ struct ast_region.data[] should now be aligned correctly for all
+ platforms. * Extracted region_check_fences() from
+ __ast_free_region() and handle_memory_show(). * Updated
+ handle_memory_show() CLI usage help. Review:
+ https://reviewboard.asterisk.org/r/2182/
+
+2012-11-07 17:08 +0000 [r375993-375994] Mark Michelson <mmichelson at digium.com>
+
+ * channels/chan_sip.c: Remove some debugging that accidentally made
+ it in the last commit.
+
+ * main/utils.c, include/asterisk/channel.h, apps/app_queue.c,
+ channels/sig_pri.c, channels/chan_iax2.c, main/channel.c,
+ channels/chan_dahdi.c, channels/sig_analog.c,
+ apps/app_waitforring.c, include/asterisk/time.h, apps/app_jack.c,
+ apps/app_dial.c, main/pbx.c, main/rtp_engine.c,
+ channels/chan_sip.c, apps/app_meetme.c, res/res_fax.c,
+ apps/app_record.c, channels/chan_agent.c: Fix misuses of timeouts
+ throughout the code. Prior to this change, a common method for
+ determining if a timeout was reached was to call a function such
+ as ast_waitfor_n() and inspect the out parameter that told how
+ many milliseconds were left, then use that as the input to
+ ast_waitfor_n() on the next go-around. The problem with this is
+ that in some cases, submillisecond timeouts can occur, resulting
+ in the out parameter not decreasing any. When this happens
+ thousands of times, the result is that the timeout takes much
+ longer than intended to be reached. As an example, I had a
+ situation where a 3 second timeout took multiple days to finally
+ end since most wakeups from ast_waitfor_n() were under a
+ millisecond. This patch seeks to fix this pattern throughout the
+ code. Now we log the time when an operation began and find the
+ difference in wall clock time between now and when the event
+ started. This means that sub-millisecond timeouts now cannot play
+ havoc when trying to determine if something has timed out. Part
+ of this fix also includes changing the function ast_waitfor() so
+ that it is possible for it to return less than zero when a
+ negative timeout is given to it. This makes it actually possible
+ to detect errors in ast_waitfor() when there is no timeout.
+ (closes issue ASTERISK-20414) reported by David M. Lee Review:
+ https://reviewboard.asterisk.org/r/2135/
+
+2012-11-06 18:18 +0000 [r375964] Richard Mudgett <rmudgett at digium.com>
+
+ * include/asterisk/channel.h, .cleancount,
+ include/asterisk/features.h, main/channel.c, main/features.c: Fix
+ stuck DTMF when bridge is broken. When a bridge is broken by an
+ AMI Redirect action or the ChannelRedirect application, an in
+ progress DTMF digit could be stuck sending forever. * Made
+ simulate a DTMF end event when a bridge is broken and a DTMF
+ digit was in progress. (closes issue ASTERISK-20492) Reported by:
+ Jeremiah Gowdy Patches: bridge_end_dtmf-v3.patch.txt (license
+ #6358) patch uploaded by Jeremiah Gowdy Modified to
+ jira_asterisk_20492_v1.8.patch jira_asterisk_20492_v1.8.patch
+ (license #5621) patch uploaded by rmudgett Tested by: rmudgett
+ Review: https://reviewboard.asterisk.org/r/2169/
+
+2012-12-10 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.19.0 Released.
+
+2012-12-06 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.19.0-rc3 Released.
+
+ * chan_local: Fix local_pvt ref leak in local_devicestate().
+
+ Regression introduced by ASTERISK-20390 fix.
+
+ (closes issue ASTERISK-20769)
+ Reported by: rmudgett
+
+2012-12-05 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.19.0-rc2 Released.
+
+ * Fix a SIP request memory leak with TLS connections.
+
+ During the TLS re-work in chan_sip some TLS specific code was moved
+ into a separate function. This function operates on a copy of the
+ incoming SIP request. This copy was never deinitialized causing a
+ memory leak for each request processed.
+
+ This function is now given a SIP request structure which it can use
+ to copy the incoming request into. This reduces the amount of memory
+ allocations done since the internal allocated components are reused
+ between packets and also ensures the SIP request structure is
+ deinitialized when the TLS connection is torn down.
+
+ (closes issue ASTERISK-20763)
+ Reported by: deti
+
+2012-11-06 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 1.8.19.0-rc1 Released.
+
+2012-11-05 22:50 +0000 [r375893] Matthew Jordan <mjordan at digium.com>
+
+ * bridges/bridge_softmix.c, include/asterisk/timing.h,
+ res/res_musiconhold.c, channels/chan_iax2.c,
+ res/res_fax_spandsp.c, res/res_timing_kqueue.c, main/timing.c,
+ main/channel.c, res/res_timing_pthread.c, res/res_timing_dahdi.c,
+ res/res_timing_timerfd.c: Refactor ast_timer_ack to return an
+ error and handle the error in timer users Currently, if an
+ acknowledgement of a timer fails Asterisk will not realize that a
+ serious error occurred and will continue attempting to use the
+ timer's file descriptor. This can lead to situations where errors
+ stream to the CLI/log file. This consumes significant resources,
+ masks the actual problem that occurred (whatever caused the timer
+ to fail in the first place), and can leave channels in odd
+ states. This patch propagates the errors in the timing resource
+ modules up through the timer core, and makes users of these
+ timers handle acknowledgement failures. It also adds some
+ defensive coding around the use of timers to prevent using bad
+ file descriptors in off nominal code paths. Note that the patch
+ created by the issue reporter was modified slightly for this
+ commit and backported to 1.8, as it was originally written for
+ Asterisk 10. (issue ASTERISK-20032) Reported by: Jeremiah Gowdy
+ patches: jgowdy-timerfd-6-22-2012.diff uploaded by Jeremiah Gowdy
+ (license 6358)
+
+2012-11-05 21:36 +0000 [r375862] Richard Mudgett <rmudgett at digium.com>
+
+ * main/loader.c: Add safety NULL pointer check in module user
+ references. Made __ast_module_user_remove() check for NULL
+ pointers. ........ Merged revision 375860 from C.3
+
+2012-11-04 03:06 +0000 [r375727-375800] Matthew Jordan <mjordan at digium.com>
+
+ * main/manager.c: Don't attempt to purge sessions when no sessions
+ exist Manager's tcp/tls objects have a periodic function that
+ purge old manager sessions periodically. During shutdown, the
+ underlying container holding those sessions can be disposed of
+ and set to NULL before the tcp/tls periodic function is stopped.
+ If the periodic function fires, it will attempt to iterate over a
+ NULL container. This patch checks for whether or not the sessions
+ container exists before attempting to purge sessions out of it.
+ If the sessions container is NULL, we simply return. Note that
+ this error was also caught by the Asterisk Test Suite.
+
+ * main/manager.c: Properly clean up manager resources on exit This
+ patch does two things: 1) It properly unregisters the manager CLI
+ commands 2) It cleans up AMI users on exit. Prior to this patch,
+ the AMI users were not being disposed of properly, resulting in a
+ memory leak. (closes issue ASTERISK-20646) Reported by: Corey
+ Farrell patches: manager_shutdown.patch uploaded by Corey Farrell
+ (license 5909)
+
+ * main/xmldoc.c: Fix memory leak when unloading XML documentation
+ This patch is a modified version of a patch originally committed
+ for the Asterisk 11 branch in r375756. A portion of that patch,
+ that fixed the memory leak during unloading XML documentation,
+ applies to branches 1.8 and 10 as well. The patch for this issue
+ was modified for these two branches. (issue ASTERISK-20648)
+ Reported by: Corey Farrell Tested by: mjordan patches:
+ xmldoc-memory_leak.patch uploaded by Corey Farrell (license 5909)
+
+ * main/cdr.c: Prevent multiple CDR batches from conflicting when
+ scheduling the CDR write The Asterisk Test Suite caught an error
+ condition where a scheduled CDR batch write can be deleted twice
+ if two channels attempt to post their CDRs at the same time. The
+ batch CDR mutex is locked while the CDRs are appended to the
+ current batch list; however, it is unlocked prior to actually
+ scheduling the CDR write. As such, two threads can attempt to
+ remove the currently scheduled batch write at the same time,
+ resulting in an assertion error. This patch extends the time that
+ the mutex is locked to encompass actually scheduling the write.
+ This prevents two threads from unscheduling the currently
+ scheduled write at the same time.
+
+2012-11-03 03:11 +0000 [r375698] Andrew Latham <lathama at gmail.com>
+
+ * README, include/asterisk/doxyref.h: Doxygen Updates Replace links
+ to missing text files removed in the 1.6.x series with links to
+ the wiki. Doxygen can handle URLs fine, don't atempt to quote
+ them. Also update the wiki link in the Readme to get everyone on
+ the same page. (issue ASTERISK-20259)
+
+2012-11-02 20:48 +0000 [r375625-375658] Richard Mudgett <rmudgett at digium.com>
+
+ * main/channel.c, channels/chan_misdn.c, main/ccss.c: Things don't
+ need to be that const.
+
+ * channels/misdn/isdn_lib.c, channels/misdn/isdn_lib.h: Multiple
+ revisions 375519-375524 ........ r375519 | rmudgett | 2012-10-30
+ 16:06:15 -0500 (Tue, 30 Oct 2012) | 11 lines chan_misdn: Timer
+ primitives must be handled first. The frm->addr is a different
+ "address space" than the stack/instance address of other Lx
+ primitives. The test for B channel instance address could fail.
+ Patches: patch01_timers.diff (license #6372) patch uploaded by
+ Guenther Kelleter JIRA ABE-2888 ........ r375520 | rmudgett |
+ 2012-10-30 16:14:58 -0500 (Tue, 30 Oct 2012) | 10 lines
+ chan_misdn: Free memory in error paths and other memory leaks.
+ The one line commented with BUG is not easily fixable because
+ there is no de-init function one can call. Patches:
+ patch02_memory.diff (license #6372) patch uploaded by Guenther
+ Kelleter JIRA ABE-2888 ........ r375521 | rmudgett | 2012-10-30
+ 16:38:41 -0500 (Tue, 30 Oct 2012) | 14 lines chan_misdn: ISDN NT
+ L2 de-establish/establish * An NT-PTMP cannot de/establish L2
+ since it doesn't know the TEIs. * On NT-PTP L2 is started when L1
+ is finally active in handle_l1. * L2 deactivation logging
+ cleanup. * L2 aggregate link status is unknown for NT-PTMP, show
+ as "UNKN". * Removed unused functions and code for L2 handling.
+ Patches: patch03_L2estab.diff (license #6372) patch uploaded by
+ Guenther Kelleter Modified JIRA ABE-2888 ........ r375522 |
+ rmudgett | 2012-10-30 16:56:14 -0500 (Tue, 30 Oct 2012) | 22
+ lines chan_misdn: Fix broken upper_id/lower_id usage. Sending PH
+ prim via lower_id layer (3 or 1) simply does not work. For TE (3)
+ it returns an error (len=-6) which is not evaluated by
+ handle_l1(), so the L1 layer status ends up wrong. Instead PH
+ must be sent via L4, only then does it reach L1 without an error
+ message. And NT PH prims only reach L1 when they are sent to
+ layer 2 id. --> use upper_id to send PH primitives. * Check for
+ errors in PH_(DE)ACTIVATE | CONFIRM. * Debug messages are
+ improved. * The lower_id is now not used for anything, except:
+ Why is lower_id layer deleted when it wasn't created? I removed
+ this code since it looks very wrong. Patches:
+ patch04_l1activation.diff (license #6372) patch uploaded by
+ Guenther Kelleter JIRA ABE-2888 ........ r375523 | rmudgett |
+ 2012-10-30 17:29:15 -0500 (Tue, 30 Oct 2012) | 31 lines
+ chan_misdn: Fix loss of B channels if L1 is down. If you make 2
+ calls out an NT PTMP port which is not connected to any phone,
+ the B channel associated with that call becomes unusable until
+ Asterisk is restarted. The problem is the EVENT_SETUP is queued
+ when L1 is not up in misdn_lib_send_event(). If L1 cannot be
+ activated the event won't be dequeued. It gets even worse when
+ the call is hung up. The queued EVENT_SETUP will be overwritten
+ by an EVENT_DISCONNECT. The reserved B channel then will never be
+ freed. If later someone connects a phone to the port, L1 will
+ eventually activate and the queued EVENT_DISCONNECT is sent down
+ the stack. However, it is ignored because it is the wrong call
+ state. The real fix would be that activation and queueing for a
+ new SETUP is done by the NT stack. But since it doesn't, the
+ workaround must be removed because it doesn't always work. Fix:
[... 42780 lines stripped ...]
More information about the asterisk-commits
mailing list