[asterisk-commits] bebuild: tag 12.0.0 r404513 - in /tags/12.0.0: ./ contrib/realtime/mysql/ con...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Dec 20 16:13:08 CST 2013
Author: bebuild
Date: Fri Dec 20 16:13:06 2013
New Revision: 404513
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=404513
Log:
Importing files for 12.0.0 release.
Added:
tags/12.0.0/.lastclean (with props)
tags/12.0.0/.version (with props)
tags/12.0.0/ChangeLog (with props)
tags/12.0.0/contrib/realtime/mysql/mysql_config.sql (with props)
tags/12.0.0/contrib/realtime/mysql/mysql_voicemail.sql (with props)
tags/12.0.0/contrib/realtime/oracle/oracle_config.sql (with props)
tags/12.0.0/contrib/realtime/oracle/oracle_voicemail.sql (with props)
tags/12.0.0/contrib/realtime/postgresql/postgresql_config.sql (with props)
tags/12.0.0/contrib/realtime/postgresql/postgresql_voicemail.sql (with props)
tags/12.0.0/contrib/realtime/sqlserver/mssql_config.sql (with props)
tags/12.0.0/contrib/realtime/sqlserver/mssql_voicemail.sql (with props)
Added: tags/12.0.0/.lastclean
URL: http://svnview.digium.com/svn/asterisk/tags/12.0.0/.lastclean?view=auto&rev=404513
==============================================================================
--- tags/12.0.0/.lastclean (added)
+++ tags/12.0.0/.lastclean Fri Dec 20 16:13:06 2013
@@ -1,0 +1,1 @@
+40
Propchange: tags/12.0.0/.lastclean
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tags/12.0.0/.lastclean
------------------------------------------------------------------------------
svn:keywords = none
Propchange: tags/12.0.0/.lastclean
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: tags/12.0.0/.version
URL: http://svnview.digium.com/svn/asterisk/tags/12.0.0/.version?view=auto&rev=404513
==============================================================================
--- tags/12.0.0/.version (added)
+++ tags/12.0.0/.version Fri Dec 20 16:13:06 2013
@@ -1,0 +1,1 @@
+12.0.0
Propchange: tags/12.0.0/.version
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tags/12.0.0/.version
------------------------------------------------------------------------------
svn:keywords = none
Propchange: tags/12.0.0/.version
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: tags/12.0.0/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/12.0.0/ChangeLog?view=auto&rev=404513
==============================================================================
--- tags/12.0.0/ChangeLog (added)
+++ tags/12.0.0/ChangeLog Fri Dec 20 16:13:06 2013
@@ -1,0 +1,22266 @@
+2013-12-20 Asterisk Development Team <asteriskteam at digium.com>
+
+ * Asterisk 12.0.0 Released.
+
+2013-12-20 22:02 +0000 [r404509] David M. Lee <dlee at digium.com>
+
+ * rest-api/api-docs/channels.json, res/ari/resource_channels.c,
+ res/res_ari_channels.c, res/ari/resource_channels.h,
+ rest-api/api-docs/applications.json: ari: Remove support for
+ specifying channel vars during origination. When we added support
+ for specifying channel variables for an origination, we didn't
+ consider how that would interact with another feature, namely
+ specifying request parameters in a JSON request body. The method
+ of specifying channel variables (as a flat JSON object passed in
+ the JSON body) interferes with parsing parameters out of the
+ request body. Unfortunately, fixing this would be a backward
+ incompatible change. In the interest of keeping the API sane and
+ keeping our release schedule, we're dropping the feature for
+ specifying channel variables in the origination request. We will
+ bring the feature back soon, as a backward compatible addition to
+ the API. (closes issue ASTERISK-23051) Review:
+ https://reviewboard.asterisk.org/r/3088
+
+2013-12-20 21:25 +0000 [r404480-404488] Matthew Jordan <mjordan at digium.com>
+
+ * /: Remove automerge properties
+
+ * res/res_pjsip/pjsip_cli.c (added), include/asterisk/sorcery.h,
+ res/res_pjsip/pjsip_configuration.c,
+ res/res_pjsip/include/res_pjsip_private.h,
+ res/res_pjsip_registrar.c, main/sorcery.c,
+ include/asterisk/res_pjsip.h, CREDITS,
+ res/res_pjsip/config_auth.c, /,
+ res/res_pjsip_endpoint_identifier_ip.c,
+ include/asterisk/config.h, main/config.c, main/channel.c,
+ res/res_pjsip/location.c, include/asterisk/res_pjsip_cli.h
+ (added): res_pjsip: Add PJSIP CLI commands Implements the
+ following cli commands: pjsip list aors pjsip list auths pjsip
+ list channels pjsip list contacts pjsip list endpoints pjsip show
+ aor(s) pjsip show auth(s) pjsip show channels pjsip show
+ endpoint(s) Also... Minor modifications made to the AMI command
+ implementations to facilitate reuse. New function
+ ast_variable_list_sort added to config.c and config.h to
+ implement variable list sorting. (issue ASTERISK-22610) patches:
+ pjsip_cli_v2.patch uploaded by george.joseph (License 6322)
+
+2013-12-20 21:16 +0000 [r404458] Scott Griepentrog <sgriepentrog at digium.com>
+
+ * /, main/say.c: say.c: correct time for polish In
+ ast_say_date_with_format_pl(), change ast_say_number() to use
+ tm_sec instead of tm_mn. (closes issue ASTERISK-22856) Reported
+ by: Robert Mordec Review:
+ https://reviewboard.asterisk.org/r/3082/ Patches: say.c.patch
+ uploaded by veilen (license 6555) ........ Merged revisions
+ 404456 from http://svn.asterisk.org/svn/asterisk/branches/1.8
+ ........ Merged revisions 404457 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-20 20:11 +0000 [r404439] Mark Michelson <mmichelson at digium.com>
+
+ * res/res_pjsip_refer.c: Fix issue where PJSIP blind transferer
+ dialog may not complete as planned. When transferring to a
+ dialplan extension that will not place any outbound calls, the
+ only control frames that the PJSIP REFER framehook will receive
+ are inconsequential (such as unhold or srcchange). As such, we
+ shouldn't allow for the reception of those types of frames
+ prevent us from signaling to the transferring party that the
+ transfer has completed successfully once voice frames are read.
+ Thanks to Jonathan Rose for pointing this out.
+
+2013-12-20 20:04 +0000 [r404437] Matthew Jordan <mjordan at digium.com>
+
+ * res/ari/resource_applications.h, res/res_stasis_device_state.c:
+ res_stasis_device_state: Set resource type for subscriptions to
+ deviceState The documentation for ARI already specifies that the
+ device state resource when used for subscribing for events is
+ "deviceState", not "device_state". The code, however, used
+ "device_state"; although this was inconsistent as well in doxygen
+ comments in resource_applications. Because the actual resource
+ being subscribed to is /deviceStates/{device}/, it makes sense
+ for the resource type specifier to be deviceState. Note that the
+ key value in the events is still "device_state".
+
+2013-12-20 19:52 +0000 [r404434] Richard Mudgett <rmudgett at digium.com>
+
+ * res/res_pjsip/location.c, tests/test_cel.c,
+ res/ari/resource_channels.c, tests/test_scoped_lock.c,
+ tests/test_stasis.c, res/parking/parking_manager.c,
+ res/ari/resource_bridges.c, res/ari/resource_endpoints.c:
+ ao2_iterator: Mini-audit of the ao2_iterator loops in the new
+ code files. * Fixed several places where ao2_iterator_destroy()
+ was not called. * Fixed several iterator loop object variable
+ reference problems. * Fixed res_parking AMI actions returning
+ non-zero. Only the AMI logoff action can return non-zero. Review:
+ https://reviewboard.asterisk.org/r/3087/
+
+2013-12-20 19:17 +0000 [r404421] Matthew Jordan <mjordan at digium.com>
+
+ * include/asterisk/manager.h: manager: bump version to 2.0.0 AMI
+ has received substantial updates over the past year. Not only has
+ the syntax been vastly improved and made consistent (which
+ entails many event changes), but the underlying things that those
+ events convey have changed substantially as well. After some
+ conversation in #asterisk-dev, it was agreed that this is a good
+ time to jump to 2. At the same time, since ARI will most likely
+ use semantic versioning, we might as well use that for AMI as
+ well. That also affords us greater meaning for the AMI version.
+
+2013-12-20 19:06 +0000 [r404419] Richard Mudgett <rmudgett at digium.com>
+
+ * main/sounds_index.c: Whitespace fixes.
+
+2013-12-20 17:21 +0000 [r404405] Rusty Newton <rnewton at digium.com>
+
+ * configs/pjsip.conf.sample: Documentation: Updates for info about
+ NAT-related settings and fixes for pjsip.conf.sample Added
+ another NAT example to pjsip.conf.sample. We had a few mentions
+ of NAT configuration throughout the sample, but I added another
+ for a little bit more clarity. Additionally many pjsip options
+ were affected by the change to snake case, so I fixed any
+ instances of those options in pjsip.conf. I regenerated the
+ config option list (at the bottom of the file) from a new xml
+ config doc dump, so all the snake case changes should be
+ reflected there, as well as any other changes to those options.
+ (issue ASTERISK-23004) (closes issue ASTERISK-23004) Reported by:
+ Matt Jordan Review: https://reviewboard.asterisk.org/r/3086/
+
+2013-12-19 18:15 +0000 [r404375] Richard Mudgett <rmudgett at digium.com>
+
+ * CHANGES: Put notice in CHANGES as well as UPGRADE.txt.
+
+2013-12-19 17:58 +0000 [r404369-404371] Joshua Colp <jcolp at digium.com>
+
+ * res/res_pjsip/pjsip_outbound_auth.c: res_pjsip: Ignore 401/407
+ responses for transactions and dialogs we don't know about. Under
+ normal conditions it is unlikely we will ever receive a response
+ for a transaction or dialog we don't know about but if any are
+ received ignore them.
+
+ * res/res_pjsip_session.c: res_pjsip_session: Fix SDP negotiation
+ when resending an INVITE with authentication. The process for
+ resending an INVITE with authentication involves restarting the
+ UAC session. We were incorrectly passing in that a new offer is
+ being sent, causing the SDP negotiation to get into a
+ (technically speaking) funky state.
+
+2013-12-19 17:15 +0000 [r404356] Mark Michelson <mmichelson at digium.com>
+
+ * include/asterisk/channel.h, res/res_pjsip.c, main/channel.c,
+ include/asterisk/autochan.h: Fix a deadlock that occurred due to
+ a conflict of masquerades. For the explanation, here is a
+ copy-paste of the review board explanation: Initially, it was
+ discovered that performing an attended transfer of a multiparty
+ bridge with a PJSIP channel would cause a deadlock. A PBX thread
+ started a masquerade and reached the point where it was calling
+ the fixup() callback on the "original" channel. For chan_pjsip,
+ this involves pushing a synchronous task to the session's
+ serializer. The problem was that a task ahead of the fixup task
+ was also attempting to perform a channel masquerade. However,
+ since masquerades are designed in a way to only allow for one to
+ occur at a time, the task ahead of the fixup could not continue
+ until the masquerade already in progress had completed. And of
+ course, the masquerade in progress could not complete until the
+ task ahead of the fixup task had completed. Deadlock. The initial
+ fix was to change the fixup task to be asynchronous. While this
+ prevented the deadlock from occurring, it had the frightful side
+ effect of potentially allowing for tasks in the session's
+ serializer to operate on a zombie channel. Taking a step back
+ from this particular deadlock, it became clear that the problem
+ was not really this one particular issue but that masquerades
+ themselves needed to be addressed. A PJSIP attended transfer
+ operation calls ast_channel_move(), which attempts to both set up
+ and execute a masquerade. The problem was that after it had set
+ up the masquerade, the PBX thread had swooped in and tried to
+ actually perform the masquerade. Looking at changes that had been
+ made to Asterisk 12, it became clear that there never is any time
+ now that anyone ever wants to set up a masquerade and allow for
+ the channel thread to actually perform the masquerade. Everyone
+ always is calling ast_channel_move(), performs the masquerade
+ itself before returning. In this patch, I have removed all blocks
+ of code from channel.c that will attempt to perform a masquerade
+ if ast_channel_masq() returns true. Now, there is no distinction
+ between setting up a masquerade and performing the masquerade. It
+ is one operation. The only remaining checks for
+ ast_channel_masq() and ast_channel_masqr() are in ast_hangup()
+ since we do not want to interrupt a masquerade by hanging up the
+ channel. Instead, now ast_hangup() will wait for a masquerade to
+ complete before moving forward with its operation. The
+ ast_channel_move() function has been modified to basically
+ in-line the logic that used to be in ast_channel_masquerade().
+ ast_channel_masquerade() has been killed off for real.
+ ast_channel_move() now has a lock associated with it that is used
+ to prevent any simultaneous moves from occurring at once. This
+ means there is no need to make sure that ast_channel_masq() or
+ ast_channel_masqr() are already set on a channel when
+ ast_channel_move() is called. It also means the channel container
+ lock is not pulling double duty by both keeping the container
+ locked and preventing multiple masquerades from occurring
+ simultaneously. The ast_do_masquerade() function has been renamed
+ to do_channel_masquerade() and is now internal to channel.c. The
+ function now takes explicit arguments of which channels are
+ involved in the masquerade instead of a single channel. While it
+ probably is possible to do some further refactoring of this
+ method, I feel that I would be treading dangerously. Instead, all
+ I did was change some comments that no longer are true after this
+ changeset. The other more minor change introduced in this patch
+ is to res_pjsip.c to make ast_sip_push_task_synchronous() run the
+ task in-place if we are already a SIP servant thread. This is
+ related to this patch because even when we isolate the channel
+ masquerade to only running in the SIP servant thread, we would
+ still deadlock when the fixup() callback is reached since we
+ would essentially be waiting forever for ourselves to finish
+ before actually running the fixup. This makes it so the fixup is
+ run without having to push a task into a serializer at all.
+ (closes issue ASTERISK-22936) Reported by Jonathan Rose Review:
+ https://reviewboard.asterisk.org/r/3069
+
+2013-12-19 17:03 +0000 [r404354] Richard Mudgett <rmudgett at digium.com>
+
+ * main/udptl.c, addons/chan_ooh323.c, channels/chan_sip.c,
+ include/asterisk/udptl.h: udptl: Dead code elimination.
+ ast_udptl_bridge was not used. Removing dead code starting with
+ ast_udptl_bridge() eliminated the code in this change. Note: This
+ code has actually been dead since Asterisk v1.4 when it was first
+ put in. Review: https://reviewboard.asterisk.org/r/3079/
+
+2013-12-19 17:02 +0000 [r404352] Scott Griepentrog <sgriepentrog at digium.com>
+
+ * /, res/res_fax.c: res_fax.c: crash on framehook with no dsp in
+ fax detect In fax_detect_framehook() a null pointer reference can
+ occur where a voice frame is processed but no dsp is attached to
+ the fax detection structure. The code block that rejects frames
+ that detection cannot be processed on is checking for dsp but
+ falls through when it should instead return, as this change
+ implements. (closes issue ASTERISK-22942) Reported by: adomjan
+ Review: https://reviewboard.asterisk.org/r/3076/ ........ Merged
+ revisions 404351 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-19 16:37 +0000 [r404348] Richard Mudgett <rmudgett at digium.com>
+
+ * channels/chan_dahdi.h, channels/chan_h323.c, main/app.c,
+ configs/sip.conf.sample, channels/sip/include/sip.h,
+ channels/chan_mgcp.c, apps/app_voicemail.c,
+ channels/chan_unistim.c, configs/chan_dahdi.conf.sample,
+ channels/chan_sip.c, configs/voicemail.conf.sample,
+ funcs/func_vmcount.c, UPGRADE.txt, res/res_xmpp.c,
+ configs/skinny.conf.sample, res/res_jabber.c, CHANGES,
+ channels/chan_iax2.c, channels/h323/chan_h323.h,
+ channels/sig_pri.c, configs/iax.conf.sample, channels/sig_pri.h,
+ include/asterisk/app.h, channels/chan_dahdi.c,
+ channels/chan_skinny.c: Voicemail: Remove mailbox identifier
+ format (box at context) assumptions in the system. This change is in
+ preparation for external MWI support. Removed code from the
+ system for normal mailbox handling that appends @default to the
+ mailbox identifier if it does not have a context. The only
+ exception is the legacy hasvoicemail users.conf option. The
+ legacy option will only work for app_voicemail mailboxes. The
+ system cannot make any assumptions about the format of the
+ mailbox identifer used by app_voicemail. chan_sip and
+ chan_dahdi/sig_pri had the most changes because they both tried
+ to interpret the mailbox identifier. chan_sip just stored and
+ compared the two components. chan_dahdi actually used the box
+ information. The ISDN MWI support configuration options had to be
+ reworked because chan_dahdi was parsing the box at context format to
+ get the box number. As a result the mwi_vm_boxes chan_dahdi.conf
+ option was added and is documented in the chan_dahdi.conf.sample
+ file. Review: https://reviewboard.asterisk.org/r/3072/
+
+2013-12-19 16:31 +0000 [r404345] Scott Griepentrog <sgriepentrog at digium.com>
+
+ * /, main/db.c: astdb: crash in sqlite3 during shutdown When
+ Asterisk is shut down, the astdb_atexit() function releases
+ (finalize) the previously initiated (prepared) SQL statements in
+ sqlite3. Another thread making a subsequent request can cause a
+ crash in sqlite3. This patch eliminates that issue by resetting
+ the statement pointer after it is released/cleared. The sqlite3
+ code detects the null pointer, and aborts the operation cleanly.
+ (closes issue AST-1265) Reported by: Alexander Hömig (closes
+ issue ASTERISK-22350) Reported by: Birger "WIMPy" Harzenetter
+ Review: https://reviewboard.asterisk.org/r/3078/ ........ Merged
+ revisions 404344 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-19 12:17 +0000 [r404332] Joshua Colp <jcolp at digium.com>
+
+ * main/channel.c: channel: Add a missing ast_channel_unlock when
+ allocating a Surrogate channel.
+
+2013-12-19 08:19 +0000 [r404320] Alexandr Anikin <may at telecom-service.ru>
+
+ * addons/ooh323c/src/oochannels.c, addons/ooh323c/src/ooGkClient.c,
+ addons/chan_ooh323.c, /, addons/ooh323c/src/ooGkClient.h: Handle
+ temporary failures on gk registration Introduce new 'stopped'
+ state for gk client and restart gk client on failures Remove
+ ooh323 stack command lock as it is not need now. (closes issue
+ ASTERISK-21960) Reported by: Dmitry Melekhov Patches:
+ ASTERISK-21960.patch ASTERISK-21960-stacklockup-2.patch Tested
+ by: Dmitry Melekhov ........ Merged revisions 404318 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-19 02:53 +0000 [r404306] Damien Wedhorn <voip at facts.com.au>
+
+ * channels/chan_skinny.c: Fixup some skinny bugs causing Fracks and
+ ao2 cleanup issues. Moved channel locking into setsubstate so
+ that a process can complete working on a sub before another
+ starts changing it. The existing code was causing some Fracks
+ with schedule deletion. Removed multiple rtp cleanup. Now only
+ cleansup up once, fixing ao2 object cleanup issues.
+
+2013-12-19 00:47 +0000 [r404294] Matthew Jordan <mjordan at digium.com>
+
+ * apps/app_cdr.c, main/cdr.c, apps/app_forkcdr.c, main/pbx.c,
+ funcs/func_cdr.c, apps/app_disa.c, UPGRADE.txt,
+ include/asterisk/cdr.h, CHANGES: app_cdr,app_forkcdr,func_cdr:
+ Synchronize with engine when manipulating state When doing the
+ rework of the CDR engine that pushed all of the logic into cdr.c
+ and made it respond to changes in channel state over Stasis, we
+ knew that accessing the CDR engine from the dialplan would be
+ "slightly" non-deterministic. Dialplan threads would be accessing
+ CDRs while Stasis threads would be updating the state of said
+ CDRs - whereas in the past, everything happened on the dialplan
+ threads. Tests have shown that "slightly" is in reality "very".
+ This patch synchronizes things by making the dialplan
+ applications/functions that manipulate CDRs do so over Stasis.
+ ForkCDR, NoCDR, ResetCDR, CDR, and CDR_PROP now all use Stasis to
+ send their requests over to the CDR engine, and synchronize on
+ the channel Stasis topic via a subscription so that they return
+ their values/control to the dialplan at the appropriate time.
+ While going through this, the following changes were also made: *
+ DISA, which can reset the CDR when a user successfully
+ authenticates, now just uses the ResetCDR app to do this. This
+ prevents having to duplicate the same Stasis synchronization
+ logic in that application. * Answer no longer disables CDRs. It
+ actually didn't work anyway - calling DISABLE on the channel's
+ CDR doesn't stop the CDR from getting the Answer time - it just
+ kills all CDRs on that channel, which isn't what the caller would
+ intend. (closes issue ASTERISK-22884) (closes issue
+ ASTERISK-22886) Review: https://reviewboard.asterisk.org/r/3057/
+
+2013-12-19 00:29 +0000 [r404292] Damien Wedhorn <voip at facts.com.au>
+
+ * channels/chan_skinny.c: Fixup skinny registration following
+ network issues. On session registration, if device is already
+ reporting that it is connected to a device, an innocuous packet
+ (update time) is sent to the already connected device. If the tcp
+ connection is down, the device will be unregistered and the new
+ connection allowed. Without this patch, network issues can see a
+ situation where a device can not reregister until after
+ 3*timeout.
+
+2013-12-18 22:50 +0000 [r404279] Jason Parker <jparker at digium.com>
+
+ * main/manager.c, /: Add AMI event for presence state. Review:
+ https://reviewboard.asterisk.org/r/3039/ ........ Merged
+ revisions 404275 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-18 20:57 +0000 [r404263] Richard Mudgett <rmudgett at digium.com>
+
+ * addons/ooh323c/src/ooTimer.c, /: ooh323c: Fix gcc 4.6.3 compiler
+ warnings. ........ Merged revisions 404212 from
+ http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+ revisions 404219 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-18 20:46 +0000 [r404237-404261] Kevin Harwell <kharwell at digium.com>
+
+ * channels/chan_oss.c: chan_oss.c: channel being locked twice and
+ unlocked once Removed channel lock as it is now being down in
+ ast_channel_alloc
+
+ * main/pickup.c, include/asterisk/aoc.h,
+ include/asterisk/stasis_bridges.h, apps/app_disa.c,
+ apps/app_userevent.c, include/asterisk/channelstate.h,
+ channels/chan_console.c, main/core_local.c, channels/chan_iax2.c,
+ main/endpoints.c, channels/chan_oss.c,
+ res/parking/parking_bridge_features.c, apps/app_agent_pool.c,
+ main/channel.c, channels/chan_misdn.c, channels/chan_skinny.c,
+ pbx/pbx_realtime.c, channels/chan_alsa.c, main/stasis_channels.c,
+ main/bridge_channel.c, addons/chan_mobile.c,
+ res/parking/parking_manager.c, channels/chan_pjsip.c,
+ tests/test_cdr.c, channels/chan_mgcp.c, channels/chan_unistim.c,
+ main/pbx.c, funcs/func_timeout.c, apps/app_meetme.c,
+ main/bridge.c, tests/test_stasis_channels.c,
+ include/asterisk/channel.h, channels/chan_gtalk.c, main/cel.c,
+ apps/app_queue.c, channels/sig_pri.c, main/stasis_bridges.c,
+ channels/chan_jingle.c, main/dial.c, channels/chan_dahdi.c,
+ channels/chan_phone.c, include/asterisk/stasis_channels.h,
+ channels/sig_analog.c, res/res_agi.c, channels/chan_motif.c,
+ tests/test_cel.c, apps/app_confbridge.c, res/res_stasis.c,
+ res/res_pjsip_refer.c, apps/app_voicemail.c, apps/app_dial.c,
+ channels/chan_vpb.cc, addons/chan_ooh323.c: channel locking: Add
+ locking for channel snapshot creation Original commit message by
+ mmichelson (asterisk 12 r403311): "This adds channel locks around
+ calls to create channel snapshots as well as other functions
+ which operate on a channel and then end up creating a channel
+ snapshot. Functions that expect the channel to be locked prior to
+ being called have had their documentation updated to indicate
+ such." The above was initially committed and then reverted at
+ r403398. The problem was found to be in core_local.c in the
+ publish_local_bridge_message function. The ast_unreal_lock_all
+ function locks and adds a reference to the returned channels and
+ while they were being unlocked they were not being unreffed when
+ no longer needed. Fixed by unreffing the channels. Also in
+ bridge.c a lock was obtained on "other->chan", but then an
+ attempt was made to unlock "other" and not the previously locked
+ channel. Fixed by unlocking "other->chan" (closes issue
+ ASTERISK-22709) Reported by: John Bigelow
+
+2013-12-18 19:20 +0000 [r404204] Joshua Colp <jcolp at digium.com>
+
+ * main/channel.c, channels/chan_dahdi.c, channels/chan_phone.c,
+ channels/chan_skinny.c, res/parking/parking_tests.c,
+ tests/test_voicemail_api.c, channels/chan_motif.c,
+ channels/chan_alsa.c, main/message.c, addons/chan_mobile.c,
+ tests/test_cdr.c, channels/chan_mgcp.c, main/pbx.c,
+ channels/chan_sip.c, tests/test_app.c,
+ apps/confbridge/conf_chan_record.c, tests/test_stasis_channels.c,
+ main/core_unreal.c, include/asterisk/channel.h,
+ channels/chan_console.c, channels/chan_oss.c,
+ channels/chan_jingle.c, channels/chan_misdn.c,
+ channels/chan_h323.c, tests/test_cel.c, channels/chan_nbs.c,
+ channels/chan_pjsip.c, apps/app_voicemail.c, res/res_calendar.c,
+ channels/chan_unistim.c, tests/test_substitution.c,
+ addons/chan_ooh323.c, channels/chan_vpb.cc,
+ channels/chan_multicast_rtp.c, apps/app_meetme.c,
+ res/res_stasis_snoop.c, channels/chan_gtalk.c,
+ channels/chan_iax2.c: channels: Return allocated channels locked.
+ This change makes ast_channel_alloc return allocated channels
+ locked. By doing so no other thread can acquire, lock, and
+ manipulate the channel before it is completely set up. (closes
+ issue AST-1256) Review: https://reviewboard.asterisk.org/r/3067/
+
+2013-12-18 12:36 +0000 [r404184] Matthew Jordan <mjordan at digium.com>
+
+ * rest-api/api-docs/bridges.json,
+ rest-api/api-docs/recordings.json,
+ rest-api/api-docs/deviceStates.json,
+ rest-api/api-docs/endpoints.json, rest-api/api-docs/events.json,
+ rest-api/api-docs/asterisk.json,
+ rest-api/api-docs/applications.json,
+ rest-api/api-docs/playbacks.json,
+ rest-api/api-docs/channels.json, rest-api/api-docs/sounds.json,
+ rest-api/resources.json: ari: Bump the version of ARI to 1.0.0
+ (closes issue ASTERISK-23007)
+
+2013-12-18 12:00 +0000 [r404137] Joshua Colp <jcolp at digium.com>
+
+ * res/res_calendar.c, /: res_calendar: Protect channel when adding
+ datastore. This change adds a missing channel lock when adding a
+ datastore to a channel. ........ Merged revisions 404135 from
+ http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+ revisions 404136 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-18 00:35 +0000 [r404099] Rusty Newton <rnewton at digium.com>
+
+ * /, funcs/func_strings.c: func_strings: Documentation fix for
+ QUOTE() Example output was inaccurate. (issue ASTERISK-22970)
+ (closes issue ASTERISK-22970) Reported by: Gareth Palmer Patches:
+ func_strings.patch uploaded by Gareth Palmer (license 5169)
+ ........ Merged revisions 404081 from
+ http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+ revisions 404087 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-18 00:16 +0000 [r404050] Matthew Jordan <mjordan at digium.com>
+
+ * LICENSE: LICENSE: Update language to include ARI
+
+2013-12-17 23:50 +0000 [r404048] Jonathan Rose <jrose at digium.com>
+
+ * tests/test_cel.c, tests/test_cdr.c: tests: fix
+ ast_bridge_base_new calls not using the additional arguments
+ r404042 gave ast_bridge_base_new two new arguments for setting a
+ bridge creator and name. Unfortunately since a couple test
+ modules aren't compiled by default, I missed the fact that this
+ change impacted those tests and caused compilation failures
+ against them.
+
+2013-12-17 23:36 +0000 [r404046] Rusty Newton <rnewton at digium.com>
+
+ * include/asterisk/test.h, main/channel.c, main/rtp_engine.c,
+ channels/chan_iax2.c, apps/app_chanspy.c, apps/app_mixmonitor.c:
+ Several components: fixing Typos in comments and code,
+ "avaliable" instead of "available" (issue ASTERISK-23021) (closes
+ issue ASTERISK-23021) Reported by: Jeremy Lainé Tested by: Rusty
+ Newton Patches: available.patch uploaded by Jeremy Lainé (license
+ 6561)
+
+2013-12-17 23:17 +0000 [r404042] Jonathan Rose <jrose at digium.com>
+
+ * include/asterisk/bridge_internal.h, apps/app_confbridge.c,
+ res/res_stasis.c, include/asterisk/bridge.h,
+ res/res_ari_bridges.c, main/bridge.c, main/bridge_basic.c,
+ include/asterisk/stasis_bridges.h, include/asterisk/stasis_app.h,
+ apps/app_bridgewait.c, res/ari/ari_model_validators.c,
+ doc/appdocsxml.xslt, main/stasis_bridges.c,
+ rest-api/api-docs/bridges.json, res/ari/resource_bridges.c,
+ apps/app_agent_pool.c, res/parking/parking_bridge.c,
+ res/ari/ari_model_validators.h, main/manager_bridges.c,
+ res/ari/resource_bridges.h: bridging: Give bridges a name and a
+ known creator Bridges have two new optional properties, a creator
+ and a name. Certain consumers of bridges will automatically
+ provide bridges that they create with these properties. Examples
+ include app_bridgewait, res_parking, app_confbridge, and
+ app_agent_pool. In addition, a name may now be provided as an
+ argument to the POST function for creating new bridges via ARI.
+ (closes issue AFS-47) Review:
+ https://reviewboard.asterisk.org/r/3070/
+
+2013-12-17 18:34 +0000 [r404027-404029] Joshua Colp <jcolp at digium.com>
+
+ * res/res_sorcery_config.c: res_sorcery_config: Output an error
+ message when an object can't be created. If object creation fails
+ an error message will now be output with the id, type, and
+ configuration file.
+
+ * main/framehook.c: framehooks: Re-iterate if framehook provides
+ different frame. Framehooks can be used in a reactive manner to
+ execute specific logic when a frame is received with a certain
+ type and payload. Since it is possible for framehooks to provide
+ frames it was possible for this reactive framehook to be unaware
+ of frames it is looking for. This change makes it so that when
+ framehooks return a modified frame the code will now re-iterate
+ (from the beginning) and call any previous framehooks that have
+ not provided a modified frame themselves. Review:
+ https://reviewboard.asterisk.org/r/3046/
+
+2013-12-17 14:33 +0000 [r404006] David M. Lee <dlee at digium.com>
+
+ * configs/asterisk.conf.sample, main/asterisk.c: Changed the
+ default for live_dangerously to no
+
+2013-12-17 12:51 +0000 [r403993] Matthew Jordan <mjordan at digium.com>
+
+ * res/ari/resource_channels.c: ari/resource_channels: When creating
+ a channel, specify a default format (SLIN) When creating channels
+ via ARI, the current code fails to provide any default format
+ capabilities. For non-virtual channels this isn't really a
+ problem - the channels typically receive their capabilities as a
+ result of the underlying channel driver configuration. For
+ virtual channels (such as Local channels), the lack of any format
+ capabilities causes the Asterisk core to make some 'odd' choices
+ with respect to the translation paths. The issue reporter had
+ some paths that had 3 hops on each channel leg, causing multiple
+ transcodings and some really crappy audio/performance. By
+ specifying a baseline of SLIN, we prevent that from occurring.
+ Note that this is what AMI does when it performs an Originate, as
+ does res_clioriginate. Review:
+ https://reviewboard.asterisk.org/r/3068/ (issue ASTERISK-22962)
+ Reported by: Matt DiMeo
+
+2013-12-16 18:31 +0000 [r403959] David M. Lee <dlee at digium.com>
+
+ * UPGRADE.txt, include/asterisk/pbx.h, main/asterisk.c,
+ funcs/func_realtime.c, main/pbx.c, main/tcptls.c,
+ funcs/func_db.c, /, README-SERIOUSLY.bestpractices.txt,
+ configs/asterisk.conf.sample, funcs/func_shell.c,
+ funcs/func_env.c, funcs/func_lock.c: security: Inhibit execution
+ of privilege escalating functions This patch allows individual
+ dialplan functions to be marked as 'dangerous', to inhibit their
+ execution from external sources. A 'dangerous' function is one
+ which results in a privilege escalation. For example, if one were
+ to read the channel variable SHELL(rm -rf /) Bad Things(TM) could
+ happen; even if the external source has only read permissions.
+ Execution from external sources may be enabled by setting
+ 'live_dangerously' to 'yes' in the [options] section of
+ asterisk.conf. Although doing so is not recommended. Also, the
+ ABI was changed to something more reasonable, since Asterisk 12
+ does not yet have a public release. (closes issue ASTERISK-22905)
+ Review: http://reviewboard.digium.internal/r/432/ ........ Merged
+ revisions 403913 from
+ http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+ revisions 403917 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+2013-12-16 18:22 +0000 [r403957] Jonathan Rose <jrose at digium.com>
+
+ * main/bridge.c: transfers: Fix bug setting both BLINDTRANSFER and
+ ATTENDEDTRANSFER The ast_bridge_set_transfer_variables function
+ is supposed to wipe whichever variable isn't being set. Instead
+ it was setting both to the new value. Oops. (issue AFS-24)
+
+2013-12-16 16:11 +0000 [r403856-403864] Scott Griepentrog <sgriepentrog at digium.com>
+
+ * main/pbx.c, /: pbx.c: put copy of ast_exten.data on stack to
+ prevent memory corruption During dialplan execution in
+ pbx_extension_helper(), the contexts global read lock prevents
+ link list corruption, but was released with a pointer to the
+ ast_exten and data later used in variable substitution. Instead,
+ this patch removes pbx_substitute_variables() and locates a copy
+ of the ast_exten data on the stack before releasing the lock,
+ where ast_exten could get free'd by another thread performing a
+ module reload. (issue AST-1179) Reported by: Thomas Arimont
+ (issue AST-1246) Reported by: Alexander Hömig Review:
+ https://reviewboard.asterisk.org/r/3055/ ........ Merged
+ revisions 403862 from
+ http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+ revisions 403863 from
+ http://svn.asterisk.org/svn/asterisk/branches/11
+
+ * apps/app_sms.c: app_sms: BufferOverflow when receiving odd length
+ 16 bit message This patch prevents an infinite loop overwriting
+ memory when a message is received into the unpacksms16()
+ function, where the length of the message is an odd number of
+ bytes. (closes issue ASTERISK-22590) Reported by: Jan Juergens
+ Tested by: Jan Juergens
+
+2013-12-15 01:38 +0000 [r403823] Matthew Jordan <mjordan at digium.com>
+
+ * channels/pjsip/dialplan_functions.c: pjsip/dialplan_functions:
+ Use the right buffer length when printing URIs While
+ entertaining, sizeof(buflen) is not the same as buflen. Doh.
+
+2013-12-14 17:25 +0000 [r403808-403811] Joshua Colp <jcolp at digium.com>
+
+ * include/asterisk/res_pjsip.h, res/res_pjsip/location.c,
+ res/res_pjsip/pjsip_options.c, res/res_pjsip.c: res_pjsip: Apply
+ outbound proxy to all SIP requests. Objects which are involved in
+ SIP request creation and sending now allow an outbound proxy to
+ be specified. For cases where an endpoint is used the outbound
+ proxy specified there will be applied. (closes issue
+ ASTERISK-22673) Reported by: Antti Yrjola Review:
+ https://reviewboard.asterisk.org/r/3022/
+
+ * main/stasis_channels.c, apps/app_queue.c,
+ res/ari/ari_model_validators.c, apps/app_dial.c,
+ res/ari/ari_model_validators.h, main/dial.c,
+ include/asterisk/stasis_channels.h,
+ rest-api/api-docs/events.json, res/stasis/app.c: res_stasis:
+ Expose event for call forwarding and follow forwarded channel.
+ This change adds an event for when an originated call is
+ redirected to another target. This event contains the original
+ channel and the newly created channel. If a stasis subscription
+ exists on the original originated channel for a stasis
+ application then a new subscription will also be created on the
+ stasis application to the redirected channel. This allows the
+ application to follow the call path completely. (closes issue
+ ASTERISK-22719) Reported by: Joshua Colp Review:
+ https://reviewboard.asterisk.org/r/3054/
+
+2013-12-13 21:24 +0000 [r403796] Jonathan Rose <jrose at digium.com>
+
+ * res/res_pjsip_messaging.c, main/message.c: documentation: Add
+ PJSIP technology to messaging documentation
+
+2013-12-13 20:06 +0000 [r403782] Richard Mudgett <rmudgett at digium.com>
+
+ * main/test.c: test.c: Fix too sticky unit test failed status.
+ Rerunning a failed unit test after loading any required modules
+ should allow the test to report a pass status if it now passes.
+
+2013-12-13 20:04 +0000 [r403781] Jonathan Rose <jrose at digium.com>
+
+ * include/asterisk/bridge.h, res/parking/parking_bridge_features.c,
+ res/parking/parking_manager.c, main/bridge.c,
+ main/bridge_basic.c: Transfers: Make Asterisk set
+ ATTENDEDTRANSFER/BLINDTRANSFER more reliably There were still a
+ few cases in which ATTENDEDTRANSFER and BLINDTRANSFER wouldn't be
+ set on channels involved with blind and attended transfers. This
+ would happen with features that were initialized by channel
+ driver specific mechanisms in multiparty calls. This patch
+ resolves those cases while attempted to keep the behavior for
+ setting those variables as consistent as possible. (closes issue
+ AFS-24) Review: https://reviewboard.asterisk.org/r/3040/
+
+2013-12-13 19:55 +0000 [r403779-403780] Richard Mudgett <rmudgett at digium.com>
+
+ * include/asterisk/app.h, tests/test_voicemail_api.c, main/app.c:
+ test_voicemail_api: Add check for a registered voicemail provider
+ before tests. It is much nicer diagnosing a test failure if
+ app_voicemail is actually loaded. ........ Merged revisions
+ 403726 from http://svn.asterisk.org/svn/asterisk/trunk
+
+ * main/app.c, apps/app_voicemail.c, include/asterisk/app.h,
+ include/asterisk/doxyref.h: app_voicemail: Voicemail callback
+ registration/unregistration function improvements. * The
+ voicemail registration/unregistration functions now take a struct
+ of callbacks instead of a lengthy parameter list of callbacks. *
+ The voicemail registration/unregistration functions now prevent a
+ competing module from interfering with an already registered
+ callback supplying module. ........ Merged revisions 403643 from
+ http://svn.asterisk.org/svn/asterisk/trunk
+
+2013-12-13 18:24 +0000 [r403749-403767] Kevin Harwell <kharwell at digium.com>
+
+ * channels/chan_sip.c, include/asterisk/channel.h,
+ bridges/bridge_native_rtp.c, channels/chan_pjsip.c,
+ main/channel.c: bridge_native_rtp: Deadlock during 4-way
+ conference creation The change contains a slightly adjusted patch
[... 23879 lines stripped ...]
More information about the asterisk-commits
mailing list