[asterisk-commits] bebuild: tag 13.3.0-rc1 r433312 - in /tags/13.3.0-rc1: ./ contrib/realtime/my...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Mar 23 11:52:58 CDT 2015


Author: bebuild
Date: Mon Mar 23 11:52:56 2015
New Revision: 433312

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=433312
Log:
Importing files for 13.3.0-rc1 release.

Added:
    tags/13.3.0-rc1/.lastclean   (with props)
    tags/13.3.0-rc1/.version   (with props)
    tags/13.3.0-rc1/ChangeLog   (with props)
    tags/13.3.0-rc1/contrib/realtime/mysql/mysql_cdr.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/mysql/mysql_config.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/mysql/mysql_voicemail.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/oracle/oracle_cdr.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/oracle/oracle_config.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/oracle/oracle_voicemail.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/postgresql/postgresql_cdr.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/postgresql/postgresql_config.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/postgresql/postgresql_voicemail.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/sqlserver/mssql_cdr.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/sqlserver/mssql_config.sql   (with props)
    tags/13.3.0-rc1/contrib/realtime/sqlserver/mssql_voicemail.sql   (with props)

Added: tags/13.3.0-rc1/.lastclean
URL: http://svnview.digium.com/svn/asterisk/tags/13.3.0-rc1/.lastclean?view=auto&rev=433312
==============================================================================
--- tags/13.3.0-rc1/.lastclean (added)
+++ tags/13.3.0-rc1/.lastclean Mon Mar 23 11:52:56 2015
@@ -1,0 +1,1 @@
+40

Propchange: tags/13.3.0-rc1/.lastclean
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tags/13.3.0-rc1/.lastclean
------------------------------------------------------------------------------
    svn:keywords = none

Propchange: tags/13.3.0-rc1/.lastclean
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tags/13.3.0-rc1/.version
URL: http://svnview.digium.com/svn/asterisk/tags/13.3.0-rc1/.version?view=auto&rev=433312
==============================================================================
--- tags/13.3.0-rc1/.version (added)
+++ tags/13.3.0-rc1/.version Mon Mar 23 11:52:56 2015
@@ -1,0 +1,1 @@
+13.3.0-rc1

Propchange: tags/13.3.0-rc1/.version
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tags/13.3.0-rc1/.version
------------------------------------------------------------------------------
    svn:keywords = none

Propchange: tags/13.3.0-rc1/.version
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tags/13.3.0-rc1/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/13.3.0-rc1/ChangeLog?view=auto&rev=433312
==============================================================================
--- tags/13.3.0-rc1/ChangeLog (added)
+++ tags/13.3.0-rc1/ChangeLog Mon Mar 23 11:52:56 2015
@@ -1,0 +1,24244 @@
+2015-03-23  Asterisk Development Team <asteriskteam at digium.com>
+
+	* Asterisk 13.3.0-rc1 Released.
+
+2015-03-22 23:58 +0000 [r433247-433269]  Matthew Jordan <mjordan at digium.com>
+
+	* apps/app_queue.c, main/cli.c, main/cdr.c, main/manager.c,
+	  main/rtp_engine.c, /, funcs/func_cdr.c: Fix compilations errors
+	  on 64-bit OpenBSD systems In versiong 5.5, OpenBSD went to 64-bit
+	  time values. This requires a cast to (long) when printing members
+	  of certain time structs. Review:
+	  https://reviewboard.asterisk.org/r/4507 ASTERISK-24879 #close
+	  Reported by: snuffy Tested by: snuffy patches:
+	  openbsd-time64.diff uploaded by snuffy (License 5024) ........
+	  Merged revisions 433268 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* main/asterisk.c, main/loader.c, main/xmldoc.c, /: Fix compilation
+	  issues for OpenBSD This patch addresses compilation issues for
+	  OpenBSD. Specifically, it addresses: * It allows including
+	  <sys/vmmeter.h> in asterisk.c * Provides a needed (size_t) cast
+	  in xmldoc.c In 13+, it also addresses a conditional inclusion in
+	  loader.c. Review: https://reviewboard.asterisk.org/r/4506
+	  ASTERISK-24880 #close Reported by: snuffy Tested by: snuffy
+	  patches: misc-openbsd.diff uploaded by snuffy (License 5024)
+	  ........ Merged revisions 433245 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-20 19:52 +0000 [r433199-433222]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip_messaging.c, res/res_pjsip/pjsip_options.c,
+	  res/res_pjsip.c, res/res_pjsip_nat.c: Audit
+	  ast_pjsip_rdata_get_endpoint() usage for ref leaks. Valgrind
+	  found some memory leaks associated with
+	  ast_pjsip_rdata_get_endpoint(). The leaks would manifest when
+	  sending responses to OPTIONS requests, processing MESSAGE
+	  requests, and res_pjsip supplements implementing the
+	  incoming_request callback. * Fix ast_pjsip_rdata_get_endpoint()
+	  endpoint ref leaks in res/res_pjsip.c:supplement_on_rx_request(),
+	  res/res_pjsip/pjsip_options.c:send_options_response(),
+	  res/res_pjsip_messaging.c:rx_data_to_ast_msg(), and
+	  res/res_pjsip_messaging.c:send_response(). * Eliminated
+	  RAII_VAR() use with ast_pjsip_rdata_get_endpoint() in
+	  res/res_pjsip_nat.c:nat_on_rx_message(). * Fixed inconsistent but
+	  benign return value in
+	  res/res_pjsip/pjsip_options.c:options_on_rx_request(). Review:
+	  https://reviewboard.asterisk.org/r/4511/
+
+	* res/res_pjsip_sdp_rtp.c, main/sorcery.c, main/xmldoc.c:
+	  res_pjsip_sdp_rtp,sorcery: Fix invalid access and memory leak
+	  respectively. Valgrind found a memory leak and invalid access. *
+	  Fix invalid access by sscanf() being fed a non-nul terminated
+	  string of digits in res/res_pjsip_sdp_rtp.c:get_codecs(). * Fix
+	  memory leak in main/sorcery.c:sorcery_object_field_destructor().
+	  * Fix potential NULL pointer dereference in
+	  main/xmldoc.c:xmldoc_get_syntax_config_option(). Review:
+	  https://reviewboard.asterisk.org/r/4513/
+
+2015-03-19 19:19 +0000 [r433174]  Matthew Jordan <mjordan at digium.com>
+
+	* funcs/func_env.c, tests/test_func_file.c, /: funcs/func_env: Fix
+	  regression caused in FILE read operation When r432935 was merged,
+	  it did correctly fix a situation where a FILE read operation on
+	  the middle of a file buffer would not read the requested length
+	  in the parameters passed to the FILE function. Unfortunately, it
+	  would also allow the FILE function to append more bytes than what
+	  was available in the buffer if the length exceeded the end of the
+	  buffer length. This patch takes the minimum of the remaining
+	  bytes in the buffer along with the calculated length to append
+	  provided by the original patch, and uses that as the length to
+	  append in the return result. This patch also updates the unit
+	  tests with the scenarios that were originally pointed out in
+	  ASTERISK-21765 that the original implementation treated
+	  incorrectly. ASTERISK-21765 ........ Merged revisions 433173 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-19 10:20 +0000 [r433113-433126]  Corey Farrell <git at cfware.com>
+
+	* main/logger.c, /: logger: Apply default console logging when
+	  configuration cannot be loaded. When logger.conf is missing or
+	  invalid enable console logging and display an error message.
+	  ASTERISK-24817 #close Reported by: Corey Farrell Review:
+	  https://reviewboard.asterisk.org/r/4497/ ........ Merged
+	  revisions 433122 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* channels/sip/include/dialog.h, channels/chan_sip.c,
+	  channels/sip/include/sip.h: chan_sip: Simplify dialog/peer
+	  references, improve REF_DEBUG output. * Replace functions for
+	  ref/undef of dialogs and peers with macro's to call
+	  ao2_t_bump/ao2_t_cleanup. * Enable passthough of REF_DEBUG caller
+	  information to sip_alloc and find_call. ASTERISK-24882 #close
+	  Reported by: Corey Farrell Review:
+	  https://reviewboard.asterisk.org/r/4189/
+
+	* /, channels/chan_sip.c: chan_sip: Fix dialog reference leaked to
+	  scheduler for reinvite_timeout. Release the scheduler reference
+	  to the dialog for reinvite timeout during dialog_unlink_all.
+	  ASTERISK-24876 #close Reported by: Corey Farrell Review:
+	  https://reviewboard.asterisk.org/r/4491/ ........ Merged
+	  revisions 433112 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-18 02:34 +0000 [r433088]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip_session.c: res_pjsip_session: Fix off-nominal extra
+	  unref of session.
+
+2015-03-17 22:15 +0000 [r433060-433064]  Scott Griepentrog <sgriepentrog at digium.com>
+
+	* main/asterisk.c, main/config.c, main/xmldoc.c, main/manager.c,
+	  include/asterisk/config.h, main/utils.c, main/codec_builtin.c,
+	  main/endpoints.c: Various: bugfixes found via chaos Using
+	  DEBUG_CHAOS several instances of a null pointer crash, and one
+	  uninitialized variable were uncovered and fixed. Also added
+	  details on why Asterisk failed to initialize. Review:
+	  https://reviewboard.asterisk.org/r/4468/
+
+	* build_tools/cflags.xml, include/asterisk/utils.h: core: Introduce
+	  chaos into memory allocations Locate potential crashes by
+	  exercising seldom used code paths. This patch introduces a new
+	  define DEBUG_CHAOS, and mechanism to randomly return an error
+	  condition from functions that will seldom do so. Functions that
+	  handle the allocation of memory get the first treatment. Review:
+	  https://reviewboard.asterisk.org/r/4463/
+
+2015-03-17 21:49 +0000 [r433057]  Richard Mudgett <rmudgett at digium.com>
+
+	* main/netsock2.c, /, res/res_pjsip_sdp_rtp.c, res/res_pjsip_t38.c,
+	  apps/app_externalivr.c, res/res_pjsip_acl.c: Audit
+	  ast_sockaddr_resolve() usage for memory leaks. Valgrind found
+	  some memory leaks associated with ast_sockaddr_resolve(). Most of
+	  the leaks had already been fixed by earlier memory leak hunt
+	  patches. This patch performs an audit of ast_sockaddr_resolve()
+	  and found one more. * Fix ast_sockaddr_resolve() memory leak in
+	  apps/app_externalivr.c:app_exec(). * Made
+	  main/netsock2.c:ast_sockaddr_resolve() always set the addrs
+	  parameter for safety so the pointer will never be uninitialized
+	  on return. The same goes for
+	  res/res_pjsip_acl.c:extract_contact_addr(). * Made functions that
+	  call ast_sockaddr_resolve() with RAII_VAR() controlling the addrs
+	  variable use ast_free instead of ast_free_ptr to provide better
+	  MALLOC_DEBUG information. Review:
+	  https://reviewboard.asterisk.org/r/4509/ ........ Merged
+	  revisions 433056 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-17 18:34 +0000 [r433028-433031]  Kevin Harwell <kharwell at digium.com>
+
+	* include/asterisk/res_pjsip.h,
+	  res/res_pjsip_endpoint_identifier_anonymous.c,
+	  res/res_pjsip_endpoint_identifier_ip.c, res/res_pjsip.c,
+	  res/res_pjsip_endpoint_identifier_user.c: res_pjsip: Allow
+	  configuration of endpoint identifier query order Updated some
+	  documentation stating that endpoint identifiers registered
+	  without a name are place at the front of the lookup list. Also
+	  renamed register method
+	  'ast_sip_register_endpoint_identifier_by_name' to
+	  'ast_sip_register_endpoint_identifier_with_name' ASTERISK-24840
+	  Reported by: Mark Michelson
+
+	* configs/samples/pjsip.conf.sample, CHANGES, res/res_pjsip.c,
+	  res/res_pjsip_endpoint_identifier_user.c,
+	  include/asterisk/res_pjsip.h, res/res_pjsip/config_global.c,
+	  res/res_pjsip_endpoint_identifier_anonymous.c,
+	  res/res_pjsip_endpoint_identifier_ip.c,
+	  contrib/ast-db-manage/config/versions/45e3f47c6c44_add_pjsip_endpoint_identifier_order.py:
+	  res_pjsip: Allow configuration of endpoint identifier query order
+	  This patch fixes previously reverted code that caused binary
+	  incompatibility problems with some modules. And like the original
+	  patch it makes sure that no matter what order the endpoint
+	  identifier modules were loaded, priority is given based on the
+	  ones specified in the new global 'endpoint_identifier_order'
+	  option. ASTERISK-24840 Reported by: Mark Michelson Review:
+	  https://reviewboard.asterisk.org/r/4489/
+
+2015-03-17 16:10 +0000 [r433005]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip.c: res_pjsip: Add reason comment.
+
+2015-03-14 02:28 +0000 [r432971]  Matthew Jordan <mjordan at digium.com>
+
+	* /, main/format_cap.c: main/frame: Don't report empty disallow
+	  values as an error In realtime, it is normal to have a database
+	  with both 'allow' and 'disallow' columns in the schema. It is
+	  perfectly valid to have an 'allow' value of '!all,g722,ulaw,alaw'
+	  and no 'disallow' value. Unlike in static conf files, you can't
+	  *not* provide the disallow value. Thus, the empty disallow value
+	  causes a spurious WARNING message, which is kind of annoying.
+	  This patch makes it so that a 'disallow' value with no ... value
+	  ... is ignored. Granted, you can still screw this up as well, as
+	  technically specifying 'disallow=all,!ulaw' allows only ulaw, and
+	  then you would have no 'allow' value in your database. But
+	  really, why would you do that? WHY? ASTERISK-16779 #close
+	  Reported by: Atis Lezdins ........ Merged revisions 432970 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-14 02:00 +0000 [r432945-432949]  Joshua Colp <jcolp at digium.com>
+
+	* funcs/func_curl.c, /: func_curl: Don't hold exclusive lock when
+	  performing HTTP request. This code originally kept a lock held
+	  when performing the HTTP request to ensure that the options
+	  provided to curl remain valid. This doesn't seem to be necessary
+	  these days and holding the lock caused requests to happen
+	  sequentially instead of in parallel. ASTERISK-18708 #close
+	  Reported by: Dave Cabot ........ Merged revisions 432948 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* main/cli.c, /: core: Fix tab completion of "core set debug
+	  channel" CLI command. The "core set debug channel" CLI command
+	  mistakenly had source filenames added to its tab completion. This
+	  occurred because the CLI generator fell back to the "core set
+	  debug" command which permits setting debug at a source filename
+	  level. ASTERISK-21038 #close Reported by: Richard Kenner ........
+	  Merged revisions 432944 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-14 01:21 +0000 [r432920-432938]  Matthew Jordan <mjordan at digium.com>
+
+	* /, funcs/func_env.c: FILE: fix retrieval of file contents when
+	  offset is specified The loop that reads in a file was not
+	  correctly using the offset when determining what bytes to append
+	  to the output. This patch corrects the logic such that the
+	  correct portion of the file is extracted when an offset is
+	  specified. ASTERISK-21765 Reported by: John Zhong Tested by: Matt
+	  Jordan, Di-Shi Sun patches: file_read_390821.patch uploaded by
+	  Di-Shi Sun (License 5076) ........ Merged revisions 432935 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* apps/app_amd.c, /, configs/samples/amd.conf.sample: apps/app_amd:
+	  Document maximum_word_length option; fix AMDCAUSE documentation
+	  This patch corrects the documentation for the AMD application.
+	  Specifically: * It documents the maximum_word_length option,
+	  which limits the maximum allowed length of a single utterance. *
+	  It clarifies the AMDCAUSE values MAXWORDS and MAXWORDLENGTH.
+	  MAXWORDLENGTH was documented as MAXWORDS, while MAXWORDS was
+	  undocumented. Thanks to the issue reporter, Frank DiGennaro, for
+	  pointing out the issues. ASTERISK-19470 #close Reported by: Frank
+	  DiGennaro ........ Merged revisions 432918 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-13 17:04 +0000 [r432892-432894]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip/pjsip_configuration.c: chan_pjsip: AMI action
+	  PJSIPShowEndpoint closes AMI connection on error. Also fixed
+	  similar problem with AMI action PJSIPShowEndpoints.
+	  ASTERISK-24872 #close Reported by: Dmitriy Serov Review:
+	  https://reviewboard.asterisk.org/r/4487/
+
+	* channels/chan_pjsip.c, res/res_pjsip_caller_id.c:
+	  chan_pjsip/res_pjsip_callerid: Make Party ID handling simpler and
+	  consistent. The res_pjsip modules were manually checking both
+	  name and number presentation values when there is a function that
+	  determines the combined presentation for a party ID struct. The
+	  function takes into account if the name or number components are
+	  valid while the manual code rarely checked if the data was even
+	  valid. * Made use ast_party_id_presentation() rather than
+	  manually checking party ID presentation values. * Ensure that
+	  set_id_from_pai() and set_id_from_rpid() will not return
+	  presentation values other than what is pulled out of the SIP
+	  headers. It is best if the code doesn't assume that
+	  AST_PRES_ALLOWED and AST_PRES_USER_NUMBER_UNSCREENED are zero. *
+	  Fixed copy paste error in add_privacy_params() dealing with RPID
+	  privacy. * Pulled the id->number.valid test from
+	  add_privacy_header() and add_privacy_params() up into the parent
+	  function add_id_headers() to skip adding PAI/RPID headers
+	  earlier. * Made update_connected_line_information() not send out
+	  connected line updates if the connected line number is invalid.
+	  Lower level code would not add the party ID information and thus
+	  the sent message would be unnecessary. * Eliminated RAII_VAR
+	  usage in send_direct_media_request(). Review:
+	  https://reviewboard.asterisk.org/r/4472/
+
+2015-03-13 14:48 +0000 [r432868]  Kevin Harwell <kharwell at digium.com>
+
+	* include/asterisk/res_pjsip.h, res/res_pjsip/config_global.c,
+	  res/res_pjsip_endpoint_identifier_anonymous.c,
+	  res/res_pjsip_endpoint_identifier_ip.c,
+	  contrib/ast-db-manage/config/versions/45e3f47c6c44_add_pjsip_endpoint_identifier_order.py,
+	  configs/samples/pjsip.conf.sample, CHANGES, res/res_pjsip.c,
+	  res/res_pjsip_endpoint_identifier_user.c: Revert - res_pjsip:
+	  Allow configuration of endpoint identifier query order Due to a
+	  break in binary compatibility with some other modules these
+	  changes are being reverted until the issue can be resolved.
+	  ASTERISK-24840 Reported by: Mark Michelson
+
+2015-03-12 12:58 +0000 [r432808-432811]  Matthew Jordan <mjordan at digium.com>
+
+	* /, main/audiohook.c: main/audiohook: Update internal sample rate
+	  on reads When an audiohook is created (which is used by the
+	  various Spy applications and Snoop channel in Asterisk 13+), it
+	  initially is given a sample rate of 8kHz. It is expected,
+	  however, that this rate may change based on the media that passes
+	  through the audiohook. However, the read/write operations on the
+	  audiohook behave very differently. When a frame is written to the
+	  audiohook, the format of the frame is checked against the
+	  internal sample rate. If the rate of the format does not match
+	  the internal sample rate, the internal sample rate is updated and
+	  a new SLIN format is chosen based on that sample rate. This works
+	  just fine. When a frame is read, however, we do something quite
+	  different. If the format rate matches the internal sample rate,
+	  all is fine. However, if the rates don't match, the audiohook
+	  attempts to "fix up" the number of samples that were requested.
+	  This can result in some seriously large number of samples being
+	  requested from the read/write factories. Consider the worst case
+	  - 192kHz SLIN. If we attempt to read 20ms worth of audio produced
+	  at that rate, we'd request 3840 samples (192000 / (1000 / 20)).
+	  However, if the audiohook is still expecting an internal sample
+	  rate of 8000, we'll attempt to "fix up" the requested samples to:
+	  samples_converted = samples * (ast_format_get_sample_rate(format)
+	  / (float) audiohook->hook_internal_samp_rate); which is: 92160 =
+	  3840 * (192000 / 8000) This results in us attempting to read
+	  92160 samples from our factories, as opposed to the 3840 that we
+	  actually wanted. On a 64-bit machine, this miraculously survives
+	  - despite allocating up to two buffers of length 92160 on the
+	  stack. The 32-bit machines aren't quite so lucky. Even in the
+	  case where this works, we will either (a) get way more samples
+	  than we wanted; or (b) get about 3840 samples, assuming the
+	  timing is pretty good on the machine. Either way, the calculation
+	  being performed is wrong, based on the API users expectations. My
+	  first inclination was to allocate the buffers on the heap. As it
+	  is, however, there's at least two drawbacks with doing this: (1)
+	  It's a bit complicated, as the size of the buffers may change
+	  during the lifetime of the audiohook (ew). (2) The stack is
+	  faster (yay); the heap is slower (boo). Since our calculation is
+	  flat out wrong in the first place, this patch fixes this issue by
+	  instead updating the internal sample rate based on the format
+	  passed into the read operation. This causes us to read the
+	  correct number of samples, and has the added benefit of setting
+	  the audihook with the right SLIN format. Note that this issue was
+	  caught by the Asterisk Test Suite as a result of r432195 in the
+	  13 branch. Because this issue is also theoretically possible in
+	  Asterisk 11, the change is being made here as well. Review:
+	  https://reviewboard.asterisk.org/r/4475/ ........ Merged
+	  revisions 432810 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* Makefile, include/asterisk/utils.h, /, configure, main/Makefile,
+	  configure.ac, include/asterisk/inline_api.h, makeopts.in: Add
+	  support for the clang compiler; update RAII_VAR to use
+	  BlocksRuntime RAII_VAR, which is used extensively in Asterisk to
+	  manage reference counted resources, uses a GCC extension to
+	  automatically invoke a cleanup function when a variable loses
+	  scope. While this functionality is incredibly useful and has
+	  prevented a large number of memory leaks, it also prevents
+	  Asterisk from being compiled with clang. This patch updates the
+	  RAII_VAR macro such that it can be compiled with clang. It makes
+	  use of the BlocksRuntime, which allows for a closure to be
+	  created that performs the actual cleanup. Note that this does not
+	  attempt to address the numerous warnings that the clang compiler
+	  catches in Asterisk. Much thanks for this patch goes to: * The
+	  folks on StackOverflow who asked this question and Leushenko for
+	  providing the answer that formed the basis of this code:
+	  http://stackoverflow.com/questions/24959440/rewrite-gcc-cleanup-macro-with-nested-function-for-clang
+	  * Diederik de Groot, who has been extremely patient in working on
+	  getting this patch into Asterisk. Review:
+	  https://reviewboard.asterisk.org/r/4370/ ASTERISK-24133
+	  ASTERISK-23666 ASTERISK-20399 ASTERISK-20850 #close Reported by:
+	  Diederik de Groot patches: RAII_CLANG.patch uploaded by Diederik
+	  de Groot (License 6600) ........ Merged revisions 432807 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-11 16:38 +0000 [r432764-432787]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip/config_domain_aliases.c,
+	  res/res_pjsip/include/res_pjsip_private.h,
+	  include/asterisk/res_pjsip.h: res_pjsip: Move internal
+	  init/destroy prototypes to private header file. Done as a
+	  separate commit from a finding in
+	  https://reviewboard.asterisk.org/r/4467/
+
+	* include/asterisk/res_pjsip.h, res/res_pjsip/config_global.c,
+	  res/res_pjsip/pjsip_configuration.c: res_pjsip: Fix pjsip.conf
+	  type=global object default value handling. When a type=global
+	  section is not defined in pjsip.conf the global defaults are not
+	  applied. As a result the mandatory Max-Forwards header is not
+	  added to SIP messages for res_pjsip/chan_pjsip. The handling of
+	  pjsip.conf type=global objects has several problems: 1) If the
+	  global object is missing the defaults are not applied. 2) If the
+	  global object is missing the default_outbound_endpoint's default
+	  value is not returned by
+	  ast_sip_global_default_outbound_endpoint(). 3) Defines are needed
+	  so default values only need to be changed in one place. * Added a
+	  sorcery instance observer callback to check if there were any
+	  type=global sections loaded. If there were more than one then
+	  issue an error message. If there were none then apply the global
+	  defaults. * Fixed ast_sip_global_default_outbound_endpoint() to
+	  return the documented default when no type=global object is
+	  defined. * Made defines for the global default values. *
+	  Increased the default_useragent[] size because SVN version
+	  strings can get lengthy and 128 characters may not be enough. *
+	  Fixed an off-nominal code path ref leak in global_alloc() if the
+	  string fields fail to initialize. * Eliminated RAII_VAR in
+	  get_global_cfg() and ast_sip_global_default_outbound_endpoint().
+	  ASTERISK-24807 #close Reported by: Anatoli Review:
+	  https://reviewboard.asterisk.org/r/4467/
+
+	* res/res_pjsip/pjsip_global_headers.c: res_pjsip: Fixed invalid
+	  empty Server and User-Agent SIP headers. Setting pjsip.conf
+	  useragent to an empty string results in an empty SIP header being
+	  sent. * Made not add an empty SIP header item to the global SIP
+	  headers list. Review: https://reviewboard.asterisk.org/r/4467/
+
+2015-03-10 23:09 +0000 [r432742]  Joshua Colp <jcolp at digium.com>
+
+	* main/stasis_channels.c, main/endpoints.c, main/stasis_bridges.c:
+	  core: Don't create snapshots with locks. Snapshots are immutable
+	  and are never changed. Allocating them with a lock is wasteful.
+	  Review: https://reviewboard.asterisk.org/r/4469/
+
+2015-03-10 21:33 +0000 [r432693-432721]  Matthew Jordan <mjordan at digium.com>
+
+	* res/res_config_odbc.c, /: res/res_config_odbc: Fix improper
+	  escaping of backslashes with MySQL When escaping backslashes with
+	  MySQL, the proper way to escape the characters in a LIKE clause
+	  is to escape the '\' four times, i.e., '\\\\'. To quote the MySQL
+	  manual: "Because MySQL uses C escape syntax in strings (for
+	  example, “\n” to represent a newline character), you must double
+	  any “\” that you use in LIKE strings. For example, to search for
+	  “\n”, specify it as “\\n”. To search for “\”, specify it as
+	  “\\\\”; this is because the backslashes are stripped once by the
+	  parser and again when the pattern match is made, leaving a single
+	  backslash to be matched against." ASTERISK-24808 #close Reported
+	  by: Javier Acosta patches: res_config_odbc.diff uploaded by
+	  Javier Acosta (License 6690) ........ Merged revisions 432720
+	  from http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* apps/app_voicemail.c, /: app_voicemail: Fix crash with IMAP
+	  backends when greetings aren't present When an IMAP backend is in
+	  use and greetings are set to be used, but aren't present for a
+	  user in their IMAP folder, Asterisk will crash. This occurs due
+	  to the mailstream being set to the 'greetings' folder and being
+	  left in that particular state, regardless of the success/failure
+	  of the attempt to access the folder the mailstream points to.
+	  Later access of the mailstream assumes that it points to the
+	  'INBOX' (or some other folder), resulting in either a crash (if
+	  the greetings folder didn't exist and the mailstream is invalid)
+	  or an inability to read messages from the 'INBOX' folder. This
+	  patch restores the mailstream to its correct state after
+	  accessing the greetings. This fixes the crash, and sets the
+	  mailstream to the state that VoiceMailMain expects. Note that
+	  while ASTERISK-23390 also contained a patch for this issue, the
+	  patch on ASTERISK-24786 is the one being merged here. Review:
+	  https://reviewboard.asterisk.org/r/4459/ ASTERISK-23390 #close
+	  Reported by: Ben Smithurst ASTERISK-24786 #close Reported by:
+	  Graham Barnett Tested by: Graham Barnett patches:
+	  app_voicemail.c.patch.SIGSEGV3rev2 uploaded by Graham Barnett
+	  (License 6685) ........ Merged revisions 432695 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* /, main/stdtime/localtime.c: localtime: Fix file descriptor leak
+	  on kqueue(2) systems The localtime management in the Asterisk
+	  core contains a thread that watches for changes in the local
+	  timezone. On systems where the directory containing
+	  /etc/localtime is modified frequently, the thread monitoring the
+	  changes will be woken up to determine if any changes in timezone
+	  have occurred. When using kqueue(2), this can cause a leak of
+	  file descriptors due to some improper management of resources.
+	  This patch updates the kqueue(2) handling in localtime, such that
+	  is no longer leaks resources. Review:
+	  https://reviewboard.asterisk.org/r/4450/ ASTERISK-24739 #close
+	  Reported by: Ed Hynan patches: 11.15.0-u.diff uploaded by Ed
+	  Hynan (Licnese 6680) 11.7.0-u.diff uploaded by Ed Hynan (License
+	  6680) svn-trunk-Jan-26-2015-u.diff uploaded by Ed Hynan (License
+	  6680) ........ Merged revisions 432691 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-10 16:04 +0000 [r432668]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip_refer.c, res/res_pjsip_session.c,
+	  include/asterisk/res_pjsip_session.h,
+	  res/res_pjsip_session.exports.in: res_pjsip_refer: Fix occasional
+	  unexpected BYE sent after receiving a REFER. A race condition
+	  happened between initiating a transfer and requesting that a
+	  dialog termination be delayed. Occasionally, the transferrer
+	  channels would exit the bridge and hangup before the dialog
+	  termination delay was requested. * Made request dialog
+	  termination delay before initiating the transfer action. If the
+	  transfer fails then cancel the delayed dialog termination
+	  request. ASTERISK-24755 #close Reported by: John Bigelow Review:
+	  https://reviewboard.asterisk.org/r/4460/
+
+2015-03-09 16:12 +0000 [r432638]  Kevin Harwell <kharwell at digium.com>
+
+	* include/asterisk/res_pjsip.h, res/res_pjsip/config_global.c,
+	  res/res_pjsip_endpoint_identifier_anonymous.c,
+	  res/res_pjsip_endpoint_identifier_ip.c,
+	  contrib/ast-db-manage/config/versions/45e3f47c6c44_add_pjsip_endpoint_identifier_order.py
+	  (added), configs/samples/pjsip.conf.sample, CHANGES,
+	  res/res_pjsip.c, res/res_pjsip_endpoint_identifier_user.c:
+	  res_pjsip: Allow configuration of endpoint identifier query order
+	  It's possible to have a scenario that will create a conflict
+	  between endpoint identifiers. For instance an incoming call could
+	  be identified by two different endpoint identifiers and the one
+	  chosen depended upon which identifier module loaded first. This
+	  of course causes problems when, for example, the incoming call is
+	  expected to be identified by username, but instead is identified
+	  by ip. This patch adds a new 'global' option to res_pjsip called
+	  'endpoint_identifier_order'. It is a comma separated list of
+	  endpoint identifier names that specifies the order by which
+	  identifiers are processed and checked. ASTERISK-24840 #close
+	  Reported by: Mark Michelson Review:
+	  https://reviewboard.asterisk.org/r/4455/
+
+2015-03-08 01:46 +0000 [r432614]  Joshua Colp <jcolp at digium.com>
+
+	* res/res_rtp_asterisk.c: res_rtp_asterisk: Fix wrongful use of
+	  USE_PJPROJECT define. As pjproject is now used as a shared
+	  library a different define, HAVE_PJPROJECT, is used to specify if
+	  pjproject is present. ASTERISK-24830 #close Reported by: Stefan
+	  Engström
+
+2015-03-06 22:50 +0000 [r432574-432594]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_pjsip_refer.c: res_pjsip_refer: Make safely get the
+	  context for a blind transfer. Made safely get the
+	  TRANSFER_CONTEXT channel value while the channel is locked in
+	  refer_incoming_attended_request() and
+	  refer_incoming_blind_request(). The pointer returned by
+	  pbx_builtin_getvar_helper() is only valid while the channel is
+	  locked.
+
+	* res/res_pjsip_refer.c: res_pjsip_refer: Made
+	  refer_attended_alloc() not create the ao2 object with a lock. The
+	  lock is unused.
+
+2015-03-06 21:11 +0000 [r432556]  Jonathan Rose <jrose at digium.com>
+
+	* include/asterisk/app.h, main/app.c: app: Add functions to swap
+	  voicemail function table for testing purposes
+
+2015-03-06 20:18 +0000 [r432528-432534]  Richard Mudgett <rmudgett at digium.com>
+
+	* channels/chan_dahdi.c, channels/sig_analog.c, /,
+	  channels/chan_dahdi.h, channels/sig_analog.h, UPGRADE.txt:
+	  chan_dahdi/sig_analog: Fix distinctive ring detection to suck
+	  less. The distinctive ring feature interferes with detecting
+	  Caller ID and appears to have been broken for years. What happens
+	  is if you have a ring-ring cadence as used in the UK you get too
+	  many DAHDI events for the distinctive ring pattern array and
+	  Caller ID detection is aborted. I think when Zapata/DAHDI added
+	  the ring begin event it broke distinctive ring. More events
+	  happen than before and the code does no filtering of which event
+	  times are recorded in the pattern array. * Made distinctive ring
+	  only record the ringt count when the ring ends instead of on just
+	  any DAHDI event. Distinctive ring can be ring, ring-ring,
+	  ring-ring-ring, or different ring durations for the up to three
+	  rings. * Fixed the distinctive ring detection enable
+	  (chan_dahdi.conf option usedistinctiveringdetection) to be per
+	  port instead of somewhat per port and somewhat global. This has
+	  been broken since v1.8. * Fixed using the default distinctive
+	  ring context when the detected pattern does not match any
+	  configured dringX patterns. The default context did not get set
+	  when the previous call was a matched distinctive ring pattern and
+	  the current call is not matched. This has been broken since v1.8.
+	  * Made distinctive ring have no effect on Caller ID detection
+	  when it is disabled. Caller ID detection just monitors for 10
+	  seconds before giving up. * Fixed leak of struct callerid_state
+	  memory when a polarity reversal during Caller ID detection causes
+	  the incoming call to be aborted. DAHDI-1143 AST-1545
+	  ASTERISK-24825 #close Reported by: Richard Mudgett ASTERISK-17588
+	  Reported by: Daniel Flounders Review:
+	  https://reviewboard.asterisk.org/r/4444/ ........ Merged
+	  revisions 432530 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* /, channels/chan_sip.c: chan_sip: Fix realtime locking inversion
+	  when poking a just built peer. When a realtime peer is built it
+	  can cause a locking inversion when the just built peer is poked.
+	  If the CLI command "sip show channels" is periodically executed
+	  then a deadlock can happen because of the locking inversion. *
+	  Push the peer poke off onto the scheduler thread to avoid the
+	  locking inversion of the just built realtime peer. AST-1540
+	  ASTERISK-24838 #close Reported by: Richard Mudgett Review:
+	  https://reviewboard.asterisk.org/r/4454/ ........ Merged
+	  revisions 432526 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-05 16:38 +0000 [r432485]  George Joseph <george.joseph at fairview5.com>
+
+	* apps/app_voicemail.c, /: app_voicemail: Fix compile breaking in
+	  app_voicemail with IMAP_STORAGE. There is a leftover "assert" in
+	  app_voicemail/__messagecount that references variables that don't
+	  exist. This causes the compile to fail when --enable-dev-mode and
+	  IMAP_STORAGE are selected. This patch removes the assert.
+	  Tested-by: George Joseph Review:
+	  https://reviewboard.asterisk.org/r/4461/ ........ Merged
+	  revisions 432484 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2015-03-04 18:52 +0000 [r432453]  Matthew Jordan <mjordan at digium.com>
+
+	* main/translate.c: translate: Prevent invalid memory accesses on
+	  fast shutdown When a 'core restart now' or 'core stop now' is
+	  executed and a channel is currently in a media operation, the
+	  translator matrix can be destroyed while a channel is currently
+	  blocked on getting the best translation choice (see
+	  ast_translator_best_choice). When the channel gets the mutex, the
+	  translation matrix now has invalid memory, and Asterisk crashes.
+	  This patch does two things: (1) We now only clean up the
+	  translation matrix on a graceful shutdown. In that case, there
+	  are no channels, and so there is no risk of this occurring. (2)
+	  We also now set the __matrix and __indextable to NULL. In some
+	  initial backtraces when this occurred, it looked as if there was
+	  a memory corruption occurring, and it wasn't until we determined
+	  that something had restarted Asterisk that the issue became
+	  clear. By setting these to NULL on shutdown, it becomes a bit
+	  easier to determine why a crash is occurring. Note that we could
+	  litter the code with NULL checks on the __matrix, but the act of
+	  making the translation matrix cleaned up on shutdown should
+	  preclude this issue from occurring in the first place, and this
+	  part of the code needs to be as fast as possible. Review:
+	  https://reviewboard.asterisk.org/r/4457/
+
+2015-03-02 19:14 +0000 [r432423]  Matthew Jordan <mjordan at digium.com>
+
+	* res/res_pjsip_sdp_rtp.c: res/res_pjsip_sdp_rtp: Revert portion of
+	  r432195 Unfortunately, while initial testing with ConfBridge did
+	  not reproduce the audio problem alluded to in the comment in
+	  res_pjsip_sdp_rtp, further testing did show that bridge_softmix
+	  and/or ConfBridge has a severe problem bridging two or more
+	  participants at different sampling rates. Sometimes, it even
+	  picks odd sampling rates that cause hideous audio problems. This
+	  patch backs out the offending portion of the code until the
+	  issues in the affected bridging modules can be more properly
+	  analyzed. ASTERISK-24841
+
+2015-02-27 18:23 +0000 [r432404]  Richard Mudgett <rmudgett at digium.com>
+
+	* main/json.c, rest-api/api-docs/endpoints.json,
+	  res/ari/resource_endpoints.c, res/res_ari_endpoints.c,
+	  include/asterisk/json.h, res/ari/resource_channels.c: ARI: Fix
+	  crash if integer values used in JSON payload 'variables' object.
+	  Sending the following ARI commands caused Asterisk to crash if
+	  the JSON body 'variables' object passes values of types other
+	  than strings. POST /ari/channels POST /ari/channels/{channelid}
+	  PUT /ari/endpoints/sendMessage PUT
+	  /ari/endpoints/{tech}/{resource}/sendMessage * Eliminated
+	  RAII_VAR usage in ast_ari_channels_originate_with_id(),
+	  ast_ari_channels_originate(), ast_ari_endpoints_send_message(),
+	  and ast_ari_endpoints_send_message_to_endpoint(). ASTERISK-24751
+	  #close Reported by: jeffrey putnam Review:
+	  https://reviewboard.asterisk.org/r/4447/
+
+2015-02-26 18:52 +0000 [r432385]  Scott Griepentrog <sgriepentrog at digium.com>
+
+	* include/asterisk/dial.h, main/dial.c: Dial API: add self destruct
+	  option when complete This patch adds a self-destruction option to
+	  the dial api. The usefulness of this is mostly when using async
+	  mode to spawn a separate thread used to handle the new call,
+	  while the calling thread is allowed to go on about other
+	  business. The only alternative to this option would be the
+	  calling thread spawning a new thread, or hanging around itself
+	  waiting to destroy the dial struct after completion. Example of
+	  use (minus error checking): struct ast_dial *dial =
+	  ast_dial_create(); ast_dial_append(dial, "PJSIP", "200", NULL);
+	  ast_dial_option_global_enable(dial, AST_DIAL_OPTION_ANSWER_EXEC,

[... 27634 lines stripped ...]



More information about the asterisk-commits mailing list