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

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Dec 8 11:10:38 CST 2014


Author: bebuild
Date: Mon Dec  8 11:10:35 2014
New Revision: 429100

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

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

Added: tags/12.8.0-rc1/.lastclean
URL: http://svnview.digium.com/svn/asterisk/tags/12.8.0-rc1/.lastclean?view=auto&rev=429100
==============================================================================
--- tags/12.8.0-rc1/.lastclean (added)
+++ tags/12.8.0-rc1/.lastclean Mon Dec  8 11:10:35 2014
@@ -1,0 +1,1 @@
+40

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

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

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

Added: tags/12.8.0-rc1/.version
URL: http://svnview.digium.com/svn/asterisk/tags/12.8.0-rc1/.version?view=auto&rev=429100
==============================================================================
--- tags/12.8.0-rc1/.version (added)
+++ tags/12.8.0-rc1/.version Mon Dec  8 11:10:35 2014
@@ -1,0 +1,1 @@
+12.8.0-rc1

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

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

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

Added: tags/12.8.0-rc1/ChangeLog
URL: http://svnview.digium.com/svn/asterisk/tags/12.8.0-rc1/ChangeLog?view=auto&rev=429100
==============================================================================
--- tags/12.8.0-rc1/ChangeLog (added)
+++ tags/12.8.0-rc1/ChangeLog Mon Dec  8 11:10:35 2014
@@ -1,0 +1,32964 @@
+2014-12-08  Asterisk Development Team <asteriskteam at digium.com>
+
+	* Asterisk 12.8.0-rc1 Released.
+
+2014-12-08 15:41 +0000 [r429061]  Kinsey Moore <kmoore at digium.com>
+
+	* res/stasis/app.c, main/channel_internal_api.c,
+	  res/stasis/stasis_bridge.c, res/stasis/app.h,
+	  include/asterisk/channel.h, res/res_stasis.c, main/channel.c:
+	  Stasis: Fix StasisStart/End order and missing events This
+	  corrects several bugs that currently exist in the stasis
+	  application code. * After a masquerade, the resulting channels
+	  have channel topics that do not match their uniqueids **
+	  Masquerades now swap channel topics appropriately * StasisStart
+	  and StasisEnd messages are leaked to observer applications due to
+	  being published on channel topics ** StasisStart and StasisEnd
+	  publishing is now properly restricted to controlling apps via app
+	  topics * Race conditions exist where StasisStart and StasisEnd
+	  messages due to a masquerade may be received out of order due to
+	  being published on different topics ** These messages are now
+	  published directly on the app topic so this is now a non-issue *
+	  StasisEnds are sometimes missing when sent due to masquerades and
+	  bridge swaps into and out of Stasis() ** This was due to
+	  StasisEnd processing adjusting message-sent flags after Stasis()
+	  had already exited and Stasis() had been re-entered ** This was
+	  corrected by adjusting these flags prior to sending the message
+	  while the initial Stasis() application was still shutting down
+	  Review: https://reviewboard.asterisk.org/r/4213/ ASTERISK-24537
+	  #close Reported by: Matt DiMeo
+
+2014-12-06 18:15 +0000 [r429028-429032]  Matthew Jordan <mjordan at digium.com>
+
+	* res/res_monitor.c, /: res/res_monitor: Reset in/out sample counts
+	  on Monitor start When repeatedly starting/stopping a Monitor on a
+	  channel, the accumulated in/out sample counts are never reset to
+	  0. This can cause inadvertent jumps in the recordings, as the
+	  code in the channel core will determine incorrectly that a jump
+	  in the recorded file position should occur. Setting the sample
+	  counts to 0 simply reflects the initial state a Monitor should be
+	  in when it is started, as this is the initial count that would be
+	  on the channels at that time. ASTERISK-24573 #close Reported by:
+	  Nuno Borges patches: 24573.patch uploaded by Nuno Borges (License
+	  6116) ........ Merged revisions 429031 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* /, apps/app_meetme.c: apps/app_meetme: Apply default values on
+	  initial load with no config file When the app_meetme module is
+	  loaded without its configuration file, the module settings aren't
+	  initialized. In particular, this impacts the use of logging
+	  realtime members. This patch guarantees that we always set the
+	  default module settings on initial load. Review:
+	  https://reviewboard.asterisk.org/r/4242/ ASTERISK-24572 #close
+	  Reported by: Nuno Borges patches: 24572.patch uploaded by Nuno
+	  Borges (License 6116) ........ Merged revisions 429027 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-12-05 17:05 +0000 [r428999]  George Joseph <george.joseph at fairview5.com>
+
+	* include/asterisk/sorcery.h, tests/test_sorcery.c, main/sorcery.c,
+	  include/asterisk/test.h: sorcery: Add additional observer
+	  capabilities. Add new global, instance and wizard observers.
+	  instance_created wizard_registered wizard_unregistered
+	  instance_destroying instance_loading instance_loaded
+	  wizard_mapped object_type_registered object_type_loading
+	  object_type_loaded wizard_loading wizard_loaded Tested-by: George
+	  Joseph Review: https://reviewboard.asterisk.org/r/4215/
+
+2014-12-04 17:12 +0000 [r428864-428972]  Matthew Jordan <mjordan at digium.com>
+
+	* main/test.c: main/test: Fix compilation issue on 32-bit systems
+	  On a 32-bit system, a type of intmax_t will result in a
+	  compilation warning when formatted as a 'long int'. Use the
+	  format specifier of %jd (which was what was used originally in
+	  manager.c) to format the JSON extracted integer on both
+	  32-/64-bit systems.
+
+	* main/test.c, main/manager.c: main/test: Fix race condition
+	  between AMI topic and Test Suite topic This patch fixes a race
+	  condition between the raising of test AMI events (which drive
+	  many tests in the Asterisk Test Suite) and other AMI events.
+	  Prior to this patch, the Stasis messages published to the test
+	  topic were not forwarded to the AMI topic. Instead, the code in
+	  manager had a dedicated handler for test messages that was
+	  independent of the topics forwarded to the AMI topic. This
+	  results in no synchronization between the test messages and the
+	  rest of the Stasis messages published out over AMI. In some test
+	  with very tight timing constraints, this can result in out of
+	  order messages and spurious test failures. Properly forwarding
+	  the Test Suite topic to the AMI topic ensures that the messages
+	  are synchronized properly. This patch does that, and moves the
+	  message handling to the Stasis definition of the Test Suite
+	  message in test.c as well. Review:
+	  https://reviewboard.asterisk.org/r/4221/
+
+	* tests/test_cel.c: tests/test_cel: Add
+	  test_cel_attended_transfer_bridges_link to racey tests Despite
+	  failing less often, the ordering of the ATTENDEDTRANSFER event
+	  and the BRIDGE_EXIT event for the Alice and David channels is not
+	  defined. This makes the test still fail.
+
+	* tests/test_cel.c: tests/test_cel: Fix CEL unit test failures
+	  caused by attended transfer changes When the publication of
+	  attended transfer messages were pushed to another thread, some
+	  subtle race conditions were introduced with the CEL unit tests.
+	  This patch fixes one of them, and pushes the other to
+	  ASTERISK-22367, which already exists to fix another bouncy CEL
+	  unit test. In particular, this patch fixes the
+	  test_cel_attended_transfer_bridges_link test, and defers the
+	  test_cel_attended_transfer_bridges_swap test to the
+	  aforementioned JIRA issue. ASTERISK-22367
+
+	* apps/app_voicemail.c, /: apps/app_voicemail: Fix crash with IMAP
+	  when streams are opened simultaneously The UW IMAP library is
+	  instrinsically not thread-safe, and relies upon higher level
+	  applications to guarantee thread safety. For the most part, this
+	  is provided by the vms object, which provides locking for
+	  individual streams. Unfortunately, this is not sufficient for
+	  calls to mail_open which create the IMAP stream. mail_open can,
+	  on some systems, call into a UW IMAP specific function for
+	  determining the address of a system based on a hostname,
+	  ip_nametoaddr. In the ip6_unix implementation of this function,
+	  static variables are used to hold parsing buffers. This can cause
+	  a crash if multiple threads attempt to convert a hostname to an
+	  address at the same time. Locking on a single mail stream is not
+	  sufficient to prevent simultaneous access to these static
+	  variables. In the IMAP library, this function can be called from
+	  the mail_open and imap_status functions. As the imap_status
+	  function is not used by app_voicemail, locking on access to
+	  mail_open is sufficient to prevent any mangling of the buffers.
+	  Review: https://reviewboard.asterisk.org/r/4188/ ASTERISK-24516
+	  #close Reported by: David Duncan Ross Palmer Tested by: David
+	  Duncan Ross Palmer patches: ASTERISK-24516.diff uploaded by David
+	  Duncan Ross Palmer (License 6660) ........ Merged revisions
+	  428863 from http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-12-02 21:49 +0000 [r428836]  George Joseph <george.joseph at fairview5.com>
+
+	* CHANGES: CHANGES: Add item for new 'pjsip show identif(y|ies)
+	  commands Tested-by: George Joseph
+
+2014-12-02 17:02 +0000 [r428788]  Matthew Jordan <mjordan at digium.com>
+
+	* pbx/pbx_loopback.c, /: pbx/pbx_loopback: Speed up switches by
+	  avoiding unneeded lookups This patch makes a small rearrangement
+	  to only do dialplan lookups during loopback switches if the
+	  pattern matches. Prior to this patch, the dialplan lookups were
+	  always performed, even when the result would be discarded.
+	  Dialplan lookups can be very costly if remote switches - like
+	  DUNDi - are present. In those cases extension matching is sped up
+	  considerably, making the issue of lost digits more manageable. As
+	  collateral damage, 6 trailing spaces were killed. Review:
+	  https://reviewboard.asterisk.org/r/4211 ASTERISK-24577 #close
+	  Reported by: Birger Harzenetter patches: ast-loopback.patch
+	  uploaded by Birger Harzenetter (License 5870) ........ Merged
+	  revisions 428787 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-12-02 12:20 +0000 [r428760]  Joshua Colp <jcolp at digium.com>
+
+	* res/res_pjsip_refer.c: res_pjsip_refer: Fix issue where native
+	  bridge may not occur upon completion of a transfer. There are two
+	  methods within res_pjsip_refer for keeping track of the state of
+	  a transfer. The first is a framehook which looks at frames
+	  passing by to determine the state. The second subscribes to know
+	  when the channel joins a bridge. In the case when the channel
+	  joins the bridge the framehook is *NOT* removed and this prevents
+	  the native RTP bridging technology from getting used. This change
+	  gets the channel and if it still exists remove the framehook.
+	  Review: https://reviewboard.asterisk.org/r/4218/
+
+2014-12-02 00:35 +0000 [r428725-428733]  George Joseph <george.joseph at fairview5.com>
+
+	* main/config.c, include/asterisk/config.h: config: Create
+	  ast_variable_find_in_list() Add const char
+	  *ast_variable_find_in_list(const struct ast_variable *list, const
+	  char *variable); ast_variable_find() requires a config category
+	  to search whereas ast_variable_find_in_list() just needs the root
+	  list element which is useful if you don't have a category.
+	  Tested-by: George Joseph Review:
+	  https://reviewboard.asterisk.org/r/4217/
+
+	* res/res_pjsip_endpoint_identifier_ip.c,
+	  res/res_pjsip/pjsip_cli.c: res_pjsip_endpoint_identifier_ip: Add
+	  'show identify(ies)' cli commands While troubleshooting other
+	  things I realized there were no pjsip cli commands for identify.
+	  This patch adds them. It also also fixes a reference leak when a
+	  'show endpoint' displayed identifies and properly sets the return
+	  code if load_module can't allocate a cli formatter structure.
+	  Tested-by: George Joseph Review:
+	  https://reviewboard.asterisk.org/r/4212/
+
+2014-12-01 15:53 +0000 [r428681]  Matthew Jordan <mjordan at digium.com>
+
+	* res/res_pjsip_refer.c, channels/chan_mgcp.c, main/stasis_cache.c,
+	  channels/chan_sip.c, include/asterisk/stasis_internal.h,
+	  configs/stasis.conf.sample (added), include/asterisk/stasis.h,
+	  UPGRADE.txt, res/parking/parking_applications.c, res/res_xmpp.c,
+	  include/asterisk/stasis_message_router.h, channels/sig_pri.c,
+	  channels/chan_iax2.c, apps/app_queue.c, res/res_jabber.c,
+	  res/res_stasis_device_state.c, main/endpoints.c,
+	  res/parking/parking_bridge_features.c, main/stasis.c,
+	  channels/chan_dahdi.c, main/stasis_message_router.c,
+	  channels/chan_skinny.c, res/res_pjsip_mwi.c,
+	  main/stasis_channels.c, res/res_pjsip_pubsub.c,
+	  tests/test_stasis.c: main/stasis: Allow subscriptions to use a
+	  threadpool for message delivery Prior to this patch, all Stasis
+	  subscriptions would receive a dedicated thread for servicing
+	  published messages. In contrast, prior to r400178 (see review
+	  https://reviewboard.asterisk.org/r/2881/), the subscriptions
+	  shared a thread pool. It was discovered during some initial work
+	  on Stasis that, for a low subscription count with high message
+	  throughput, the threadpool was not as performant as simply having
+	  a dedicated thread per subscriber. For situations where a
+	  subscriber receives a substantial number of messages and is
+	  always present, the model of having a dedicated thread per
+	  subscriber makes sense. While we still have plenty of
+	  subscriptions that would follow this model, e.g., AMI, CDRs, CEL,
+	  etc., there are plenty that also fall into the following two
+	  categories: * Large number of subscriptions, specifically those
+	  tied to endpoints/peers. * Low number of messages. Some
+	  subscriptions exist specifically to coordinate a single message -
+	  the subscription is created, a message is published, the delivery
+	  is synchronized, and the subscription is destroyed. In both of
+	  the latter two cases, creating a dedicated thread is wasteful
+	  (and in the case of a large number of peers/endpoints, harmful).
+	  In those cases, having shared delivery threads is far more
+	  performant. This patch adds the ability of a subscriber to Stasis
+	  to choose whether or not their messages are dispatched on a
+	  dedicated thread or on a threadpool. The threadpool is
+	  configurable through stasis.conf. Review:
+	  https://reviewboard.asterisk.org/r/4193 ASTERISK-24533 #close
+	  Reported by: xrobau Tested by: xrobau
+
+2014-12-01 13:40 +0000 [r428654]  Joshua Colp <jcolp at digium.com>
+
+	* /, apps/app_record.c: app_record: Fix bug where using the 'k'
+	  option and hanging up would trim 1/4 of a second of the
+	  recording. The Record dialplan function trims 1/4 of a second
+	  from the end of recordings in case they are terminated because of
+	  DTMF. When hanging up, however, you don't want this to happen.
+	  This change makes it so on hangup this does not occur.
+	  ASTERISK-24530 #close Reported by: Ben Smithurst patches:
+	  app_record_v2.diff submitted by Ben Smithurst (license 6529)
+	  Review: https://reviewboard.asterisk.org/r/4201/ ........ Merged
+	  revisions 428653 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-24 20:26 +0000 [r428601]  Richard Mudgett <rmudgett at digium.com>
+
+	* main/bridge.c, main/bridge_channel.c: DTMF hooks: Leaving
+	  channels need to push any collected digits into the bridge. Any
+	  partially collected DTMF digits for a DTMF hook need to be pushed
+	  into the bridge when a channel leaves the bridging system as if
+	  there were a timeout. Review:
+	  https://reviewboard.asterisk.org/r/4199/
+
+2014-11-21 18:59 +0000 [r428571]  Richard Mudgett <rmudgett at digium.com>
+
+	* main/manager.c, /: manager: Fix could not extend string messages.
+	  When shutting down Asterisk that has an active AMI connection,
+	  you get several "failed to extend from %d to %d" messages because
+	  use of the EVENT_FLAG_SHUTDOWN attempts to add all AMI permission
+	  strings to the event. * Created MAX_AUTH_PERM_STRING to use when
+	  creating stack based struct ast_str variables used with the
+	  authority_to_str() and user_authority_to_str() functions instead
+	  of a variety of magic numbers that could be too small. * Added a
+	  special check for EVENT_FLAG_SHUTDOWN to authority_to_str() so it
+	  will not attempt to add all permission level strings. Review:
+	  https://reviewboard.asterisk.org/r/4200/ ........ Merged
+	  revisions 428570 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-21 17:41 +0000 [r428543]  George Joseph <george.joseph at fairview5.com>
+
+	* res/res_pjsip_phoneprov_provider.c, tests/test_sorcery.c,
+	  main/sorcery.c: sorcery: Make is_object_field_registered handle
+	  field names that are regexes. As a result of
+	  https://reviewboard.asterisk.org/r/3305, res_sorcery_realtime was
+	  tossing database fields that didn't have an exact match to a
+	  sorcery registered field. This broke the ability to use regexes
+	  as field names which manifested itself as a failure of
+	  res_pjsip_phoneprov_provider which uses this capability. It also
+	  broke handling of fields that start with '@' in realtime but I
+	  don't think anyone noticed. This patch does the following... *
+	  Modifies ast_sorcery_fields_register to pre-compile the name
+	  regex. * Modifies ast_sorcery_is_object_field_registered to test
+	  the regex if it exists instead of doing an exact strcmp. *
+	  Modifies res_pjsip_phoneprov_provider with a few tweaks to get it
+	  to work with realtime. Tested-by: George Joseph Review:
+	  https://reviewboard.asterisk.org/r/4185/
+
+2014-11-20 16:36 +0000 [r428422]  Mark Michelson <mmichelson at digium.com>
+
+	* /, main/acl.c: Fix error with mixed address family ACLs. Prior to
+	  this commit, the address family of the first item in an ACL was
+	  used to compare all incoming traffic. This could lead to traffic
+	  of other IP address families bypassing ACLs. ASTERISK-24469
+	  #close Reported by Matt Jordan Patches: ASTERISK-24469-11.diff
+	  uploaded by Matt Jordan (License #6283) AST-2014-012 ........
+	  Merged revisions 428402 from
+	  http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+	  revisions 428417 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-20 16:33 +0000 [r428334-428409]  Kevin Harwell <kharwell at digium.com>
+
+	* /, funcs/func_db.c: AST-2014-018 - func_db: DB Dialplan function
+	  permission escalation via AMI. The DB dialplan function when
+	  executed from an external protocol (for instance AMI), could
+	  result in a privilege escalation. Asterisk now inhibits the DB
+	  function from being executed from an external interface if the
+	  live_dangerously option is set to no. ASTERISK-24534 Reported by:
+	  Gareth Palmer patches: submitted by Gareth Palmer (license 5169)
+	  ........ Merged revisions 428331 from
+	  http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged
+	  revisions 428363 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* apps/app_confbridge.c, /: AST-2014-017 - app_confbridge:
+	  permission escalation/ class authorization. Confbridge dialplan
+	  function permission escalation via AMI and inappropriate class
+	  authorization on the ConfbridgeStartRecord action. The CONFBRIDGE
+	  dialplan function when executed from an external protocol (for
+	  instance AMI), could result in a privilege escalation. Also, the
+	  AMI action “ConfbridgeStartRecord” could also be used to execute
+	  arbitrary system commands without first checking for system
+	  access. Asterisk now inhibits the CONFBRIDGE function from being
+	  executed from an external interface if the live_dangerously
+	  option is set to no. Also, the “ConfbridgeStartRecord” AMI action
+	  is now only allowed to execute under a user with system level
+	  access. ASTERISK-24490 Reported by: Gareth Palmer ........ Merged
+	  revisions 428332 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-20 15:46 +0000 [r428333]  Jonathan Rose <jrose at digium.com>
+
+	* res/res_pjsip_acl.c: PJSIP ACLs: Fix ACLs not loading on startup
+	  and apply/acl issues on contact The biggest problem this patch
+	  fixes is that ACLs weren't previously being loaded when the
+	  res_pjsip_acl module was loaded. Yikes. In addition, the ACL
+	  options contact_permit and contact_acl were effectively
+	  interpreted as contact_deny and this patch fixes that as well.
+	  AST-1418 #close Reported by: Thomas Thompson Review:
+	  https://reviewboard.asterisk.org/r/4120/ ASTERISK-24531 #close
+	  Reported by: Matt Jordan Review:
+	  https://reviewboard.asterisk.org/r/4171/
+
+2014-11-20 14:54 +0000 [r428301-428304]  Joshua Colp <jcolp at digium.com>
+
+	* res/res_pjsip_refer.c: AST-2014-016: Fix crash when receiving an
+	  in-dialog INVITE with Replaces in res_pjsip_refer. The
+	  implementation of INVITE with Replaces in res_pjsip_refer did not
+	  expect them to occur in-dialog. As a result it would incorrectly
+	  attempt to hang up a channel it thought was under its control. In
+	  reality the channel would be under the control of another thread.
+	  When the other thread accessed the channel it would be accessing
+	  freed memory and could crash. This change makes res_pjsip_refer
+	  not act on an in-dialog INVITE with Replaces. ASTERISK-24528
+	  #close Reported by: Joshua Colp
+
+	* channels/chan_pjsip.c: AST-2014-015: Fix race condition in
+	  chan_pjsip when sending responses after a CANCEL has been
+	  received. Due to the serialized architecture of chan_pjsip there
+	  exists a race condition where a CANCEL may be received and
+	  processed before responses (such as 180 Ringing, 183 Session
+	  Progress, and 200 OK) are sent. Since the session is in an
+	  unexpected state PJSIP will assert when this is attempted. This
+	  change makes it so that these responses are not sent on
+	  disconnected sessions. ASTERISK-24471 #close Reported by: yaron
+	  nahum
+
+2014-11-19 19:30 +0000 [r428272]  Corey Farrell <git at cfware.com>
+
+	* include/asterisk/stringfields.h: stringfields: Fix bug in
+	  ast_string_fields_copy. ast_string_fields_copy relies on the fact
+	  that __ast_string_field_release_active never previously zeroed
+	  pool->used, so keeping the existing pointer was "ok". Now that
+	  existing pools can be reset to 'empty', it is important to set
+	  each field to __ast_string_field_empty after releasing the
+	  memory. ASTERISK-24535 #close Reported by: Corey Farrell Review:
+	  https://reviewboard.asterisk.org/r/4186/
+
+2014-11-19 16:56 +0000 [r428245]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/res_calendar.c, main/manager.c, /, channels/chan_sip.c,
+	  channels/sip/security_events.c: ast_str: Fix improper member
+	  access to struct ast_str members. Accessing members of struct
+	  ast_str outside of the string manipulation API routines is
+	  invalid since struct ast_str is supposed to be treated as opaque.
+	  Review: https://reviewboard.asterisk.org/r/4194/ ........ Merged
+	  revisions 428244 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-19 11:50 +0000 [r428195]  Joshua Colp <jcolp at digium.com>
+
+	* res/res_pjsip_refer.c: res_pjsip_refer: Ensure Refer-To is NULL
+	  terminated and parse it as a URI. There is no guarantee that when
+	  we get a Refer-To that it will be NULL terminated. As the URI
+	  parsing function requires it to be we now NULL terminate it.
+	  Additionally parsing the Refer-To as a 'To' header is needless
+	  and it can simply be done as a URI. This also fixes a problem
+	  where certain Refer-To headers would not be parsed as a 'To'
+	  header causing the REFER to fail. ASTERISK-24508 #close Reported
+	  by: Beppo Mazzucato Review:
+	  https://reviewboard.asterisk.org/r/4187/
+
+2014-11-18 18:54 +0000 [r428168]  Richard Mudgett <rmudgett at digium.com>
+
+	* res/parking/parking_tests.c: parking_tests.c: Add missing newline
+	  on a unit test message.
+
+2014-11-17 15:59 +0000 [r428118]  Corey Farrell <git at cfware.com>
+
+	* /, channels/chan_sip.c: chan_sip: Fix theoretical leak of
+	  p->refer. If transmit_refer is called when p->refer is already
+	  allocated, it leaks the previous allocation. Updated code to
+	  always free previous allocation during a new allocation. Also
+	  instead of checking if we have a previous allocation, always
+	  create a clean record. ASTERISK-15242 #close Reported by: David
+	  Woolley Review: https://reviewboard.asterisk.org/r/4160/ ........
+	  Merged revisions 428117 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-17 15:27 +0000 [r428078-428114]  Matthew Jordan <mjordan at digium.com>
+
+	* /, apps/confbridge/conf_state_multi_marked.c:
+	  apps/app_confbridge: Ensure 'normal' users hear message when last
+	  marked leaves When r428077 was made for ASTERISK-24522, it failed
+	  to take into account users who are neither wait_marked nor
+	  end_marked. These users are *also* supposed to hear the 'leader
+	  has left the conference' message. Granted, this behaviour is a
+	  bit odd; however, that is how it used to work... and behaviour
+	  changes are not good. This patch ensures that if there are any
+	  'normal' users present when the last marked user leaves the
+	  conference, the message will still be played to them. Note that
+	  this regression was caught by the Asterisk Test Suite's
+	  confbridge_nominal test, which has a quirky combination of users.
+	  ........ Merged revisions 428113 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* tests/test_cel.c: tests/test_cel: Fix CEL unit tests This is a
+	  backport of the test_cel portion of r427870, which was not
+	  applied to the 12 branch. This fixes the compilation issues with
+	  the CEL unit tests introduced by the API changes needed to fix
+	  publication of blind transfer messages.
+
+	* /, apps/confbridge/conf_state_multi_marked.c: app_confbridge:
+	  Don't play leader leaving prompt if no one will hear it Consider
+	  the following: - A marked user in a conference - One or more
+	  end_marked only users in the conference When the marked users
+	  leaves, we will be in the conf_state_multi_marked state. This
+	  currently will traverse the users, kicking out any who have the
+	  end_marked flags. When they are kicked, a full ast_bridge_remove
+	  is immediately called on the channels. At this time, we also
+	  unilaterally set the need_prompt flag. When the need_prompt flag
+	  is set, we then playback a sound to the bridge informing everyone
+	  that the leader has left; however, no one is left in the bridge.
+	  This causes some odd behaviour for the end_marked users - they
+	  are stuck waiting for the bridge to be unlocked. This results in
+	  them waiting for 5 or 6 seconds of dead air before hearing that
+	  they've been kicked. Unfortunately, we do have to keep the bridge
+	  locked while we're playing back the 'leader-has-left' prompt. If
+	  there are any wait_marked users in the conference, this behaviour
+	  can't be easily changed - but we do make the case of the
+	  end_marked users better with this patch. Review:
+	  https://reviewboard.asterisk.org/r/4184/ ASTERISK-24522 #close
+	  Reported by: Matt Jordan ........ Merged revisions 428077 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-16 21:11 +0000 [r427978-428051]  Joshua Colp <jcolp at digium.com>
+
+	* channels/chan_pjsip.c: chan_pjsip: Remove AOR check when dialing
+	  and one is specified. The AOR value may contain the name of an
+	  AOR or a full SIP URI. Checking if the AOR exists can't be done
+	  as a result of this.
+
+	* channels/chan_pjsip.c: chan_pjsip: Add additional log message
+	  when an AOR is specified when dialing and it does not exist.
+	  ASTERISK-24499 #close Reported by: Rusty Newton
+
+	* channels/chan_pjsip.c, channels/chan_motif.c: chan_motif /
+	  chan_pjsip: Fix incorrect "No such module" messages when
+	  reloading. For chan_motif the direct return value of the
+	  underlying config options framework was passed back. This can
+	  relay various states which the module loader would not interpet
+	  as success. It has been changed so only on errors will it report
+	  back an error. For chan_pjsip the code implemented a dummy reload
+	  function which always returned an error. This has been removed as
+	  all configuration is held within res_pjsip instead.
+	  ASTERISK-23651 #close Reported by: Rusty Newton
+
+	* res/res_pjsip/pjsip_configuration.c: res_pjsip: Enforce
+	  requirements for session timer minimum expiration period and
+	  normal expiration period. This change enforces the requirements
+	  in PJSIP for session timer configuration. The minimum expiration
+	  period must be 90 seconds or higher and the normal expiration
+	  period can not be lower than the minimum expiration period. If
+	  either of these were done the code would assert at session setup
+	  time. ASTERISK-24336 #close Reported by: Leon Rowland
+
+2014-11-15 16:56 +0000 [r427953]  Matthew Jordan <mjordan at digium.com>
+
+	* cel/cel_odbc.c, /: cel/cel_odbc: Provide microsecond precision in
+	  'eventtime' column when possible This patch adds microsecond
+	  precision when inserting a CEL record into a table with an
+	  "eventtime" column of type timestamp, instead of second
+	  precision. The documentation (configs/cel_odbc.conf.sample) was
+	  already saying that the eventtime column included microseconds
+	  precision, but that was not the case. Also, without this patch,
+	  if you had a table with an "eventtime" column of type varchar,
+	  you had millisecond precision. With this patch, you also get
+	  microsecond precision in this case. Review:
+	  https://reviewboard.asterisk.org/r/3980 ASTERISK-24283 #close
+	  Reported by: Etienne Lessard patches:
+	  cel_odbc_time_precision.patch uploaded by Etienne Lessard
+	  (License 6394) ........ Merged revisions 427952 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-14 17:41 +0000 [r427901]  Jonathan Rose <jrose at digium.com>
+
+	* configs/cdr.conf.sample, main/cdr.c: Documentation: Revise
+	  explanation of cdr.conf option 'Unanswered' ASTERISK-24279 #close
+	  Reported by: Matt Jordan Review:
+	  https://reviewboard.asterisk.org/r/4109/
+
+2014-11-14 15:49 +0000 [r427875]  Scott Griepentrog <sgriepentrog at digium.com>
+
+	* main/stun.c, /: stun: correct attribute string padding to match
+	  rfc When sending the USERNAME attribute in an RTP STUN response,
+	  the implementation in append_attr_string passed the actual
+	  length, instead of padding it up to a multiple of four bytes as
+	  required by the RFC 3489. This change adds separate variables for
+	  the string and padded attributed lengths, and performs padding
+	  correctly. Reported by: Thomas Arimont Review:
+	  https://reviewboard.asterisk.org/r/4139/ ........ Merged
+	  revisions 427874 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+2014-11-14 15:00 +0000 [r427848]  Mark Michelson <mmichelson at digium.com>
+
+	* res/stasis/app.c, main/bridge.c, main/bridge_basic.c,
+	  include/asterisk/stasis_bridges.h, apps/app_queue.c, main/cel.c,
+	  main/stasis_bridges.c: Fix race condition that could result in
+	  ARI transfer messages not being sent. From reviewboard: "During
+	  blind transfer testing, it was noticed that tests were failing
+	  occasionally because the ARI blind transfer event was not being
+	  sent. After investigating, I detected a race condition in the
+	  blind transfer code. When blind transferring a single channel,
+	  the actual transfer operation (i.e. removing the transferee from
+	  the bridge and directing them to the proper dialplan location) is
+	  queued onto the transferee bridge channel. After queuing the
+	  transfer operation, the blind transfer Stasis message is
+	  published. At the time of publication, snapshots of the channels
+	  and bridge involved are created. The ARI subscriber to the blind
+	  transfer Stasis message then attempts to determine if the bridge
+	  or any of the involved channels are subscribed to by ARI
+	  applications. If so, then the blind transfer message is sent to
+	  the applications. The way that the ARI blind transfer message
+	  handler works is to first see if the transferer channel is
+	  subscribed to. If not, then iterate over all the channel IDs in
+	  the bridge snapshot and determine if any of those are subscribed
+	  to. In the test we were running, the lone transferee channel was
+	  subscribed to, so an ARI event should have been sent to our
+	  application. Occasionally, though, the bridge snapshot did not
+	  have any channels IDs on it at all. Why? The problem is that
+	  since the blind transfer operation is handled by a separate
+	  thread, it is possible that the transfer will have completed and
+	  the channels removed from the bridge before we publish the blind
+	  transfer Stasis message. Since the blind transfer has completed,
+	  the bridge on which the transfer occurred no longer has any
+	  channels on it, so the resulting bridge snapshot has no channels
+	  on it. Through investigation of the code, I found that attended
+	  transfers can have this issue too for the case where a transferee
+	  is transferred to an application." The fix employed here is to
+	  decouple the creation of snapshots for the transfer messages from
+	  the publication of the transfer messages. This way, snapshots can
+	  be created to reflect what they are at the time of the transfer
+	  operation. Review: https://reviewboard.asterisk.org/r/4135
+
+2014-11-14 14:55 +0000 [r427843-427845]  Joshua Colp <jcolp at digium.com>
+
+	* /, apps/confbridge/conf_state_multi_marked.c: app_confbridge:
+	  Play "leader has left" sound even when musiconhold is enabled.
+	  Currently if the leader of a conference bridge leaves any
+	  participant that has musiconhold enabled will not hear the
+	  "leader has left" sound. This is because musiconhold is started
+	  and THEN the sound is played. This change makes it so that the
+	  sound is played and THEN musiconhold is started. This provides a
+	  better experience for users as they may not have known previously
+	  why they went back to musiconhold. Review:
+	  https://reviewboard.asterisk.org/r/4177/ ........ Merged
+	  revisions 427844 from
+	  http://svn.asterisk.org/svn/asterisk/branches/11
+
+	* res/res_pjsip_pubsub.c: res_pjsip_pubsub: Add some casting so
+	  that it builds once again.
+
+2014-11-14 14:21 +0000 [r427840]  Mark Michelson <mmichelson at digium.com>
+
+	* res/res_pjsip.c, res/res_pjsip_pubsub.c, res/res_pjsip_session.c,
+	  include/asterisk/res_pjsip.h: Fix a possible race condition where
+	  duplicate requests may be handled by separate threads. If an
+	  endpoint retransmits a request, it's possible due to temporary
+	  load that Asterisk may end up processing both requests at the
+	  same time in separate threads. One thread will successfully
+	  handle the request, while the other thread fails to handle the
+	  request since the first thread already registered the transaction
+	  with the PJSIP core. The fix here is to detect the duplicated
+	  transaction failure and to silently absorb the request since
+	  another thread should be properly handling the request. Review:
+	  https://reviewboard.asterisk.org/r/4174
+
+2014-11-13 21:56 +0000 [r427814]  Kevin Harwell <kharwell at digium.com>
+
+	* res/res_pjsip_outbound_registration.c: res_pjsip_exten_state:
+	  PJSIPShowSubscriptionsInbound causes crash When using a
+	  non-default sorcery wizard (in this instance realtime) for
+	  outbound registrations and after adding in an appropriate call to
+	  ast_sorcery_apply_config() (since it is missing) Asterisk will
+	  crash after a stack overflow occurs due to the code infinitely
+	  recursing. The fix entails removing the outbound registration
+	  state dependency from the outbound registration sorcery object
+	  and instead keeping an in memory container that can be used to
+	  lookup the state when needed. ASTERISK-24514 Reported by: Mark
+	  Michelson Review: https://reviewboard.asterisk.org/r/4164/
+
+2014-11-13 15:42 +0000 [r427788]  Kinsey Moore <kmoore at digium.com>
+
+	* res/stasis/app.h, res/res_stasis.c, res/stasis/app.c,
+	  res/stasis/stasis_bridge.c, include/asterisk/stasis.h,
+	  include/asterisk/stasis_app.h: Stasis: Fix StasisEnd message
+	  ordering This change corrects message ordering in cases where a
+	  channel-related message can be received after a Stasis/ARI
+	  application has received the StasisEnd message. The StasisEnd
+	  message was being passed to applications directly without waiting
+	  for the channel topic to empty. As a result of this fix, other
+	  bugs were also identified and fixed: * StasisStart messages were
+	  also being sent directly to apps and are now routed through the
+	  stasis message bus properly * Masquerade monitor datastores were
+	  being removed at the incorrect time in some cases and were
+	  causing StasisEnd messages to not be sent * General refactoring
+	  where necessary for the above * Unsubscription on StasisEnd
+	  timing changes to prevent additional messages from following the
+	  StasisEnd when they shouldn't A channel sanitization function
+	  pointer was added to reduce processing and AO2 lookups. Review:
+	  https://reviewboard.asterisk.org/r/4163/ ASTERISK-24501 #close
+	  Reported by: Matt Jordan
+
+2014-11-12 23:59 +0000 [r427762]  Matthew Jordan <mjordan at digium.com>
+
+	* main/rtp_engine.c: main/rtp_engine: Fix crash when processing
+	  more than one RTCP report info block Asterisk - in
+	  res_rtp_asterisk - only understands a single RTCP report info
+	  block. When the RTCP information was refactored in the RTP Engine
+	  to be pushed over the Stasis message bus, I put in the hooks into
+	  the engine to handle multiple RTCP report info blocks, in the
+	  hope that a future RTP implementation would be able to provide
+	  that data. Unfortunately, res_rtp_asterisk has a tendency to
+	  "lie": (1) It will send RTCP reports with a
+	  reception_report_count greater than 1 (which is pulled directly
+	  from the RTCP packet itself, so that part is correct) (2) It will

[... 36226 lines stripped ...]



More information about the asterisk-commits mailing list