                                Release Summary

                                asterisk-16.4.0

                                Date: 2019-05-30

                           <asteriskteam@digium.com>

     ----------------------------------------------------------------------

                               Table of Contents

    1. Summary
    2. Contributors
    3. Closed Issues
    4. Open Issues
    5. Other Changes
    6. Diffstat

     ----------------------------------------------------------------------

                                    Summary

                                 [Back to Top]

   This release is a point release of an existing major version. The changes
   included were made to address problems that have been identified in this
   release series, or are minor, backwards compatible new features or
   improvements. Users should be able to safely upgrade to this version if
   this release series is already in use. Users considering upgrading from a
   previous version are strongly encouraged to review the UPGRADE.txt
   document as well as the CHANGES document for information about upgrading
   to this release series.

   The data in this summary reflects changes that have been made since the
   previous release, asterisk-16.3.0.

     ----------------------------------------------------------------------

                                  Contributors

                                 [Back to Top]

   This table lists the people who have submitted code, those that have
   tested patches, as well as those that reported issues on the issue tracker
   that were resolved in this release. For coders, the number is how many of
   their patches (of any size) were committed into this release. For testers,
   the number is the number of times their name was listed as assisting with
   testing a patch. Finally, for reporters, the number is the number of
   issues that they reported that were affected by commits that went into
   this release.

   Coders                       Testers       Reporters                       
   9 George Joseph              1 Abhay Gupta 4 sungtae kim                   
   9 Sean Bright                              4 Joshua C. Colp                
   5 Ben Ford                                 3 Ross Beer                     
   4 Joshua Colp                              3 Abhay Gupta                   
   3 Abhay Gupta                              3 Ross Beer                     
   3 Kevin Harwell                            2 Guido Falsi                   
   3 sungtae kim                              2 George Joseph                 
   2 Asterisk Development Team                1 klaus3000                     
   2 Guido Falsi                              1 test011                       
   1 Salah Ahmed                              1 Janu                          
   1 Holger Hans Peter Freyther               1 Marin Odrljin                 
   1 Matthew Fredrickson                      1 SÃ©bastien Duthil             
   1 Alexei Gradinari                         1 Salah Ahmed                   
   1 Sebastian Kemper                         1 the CC variable, instead of   
   1 Lucas Mendes                             unconditionally                 
   1 Chris-Savinovich                         1 Steven Wheeler                
   1 Dan Cropp                                1 Dmitry Shubin                 
   1 Antoni Goldstein                         1 Abhay Gupta                   
   1 Alexander Anikin                         1 Corey Farrell                 
                                              1 Dan Cropp                     
                                              1 Steven Wheeler                
                                              1 Kirill Katsnelson             
                                              1 Kirill Katsnelson             
                                              1 Dmitry Shubin                 
                                              1 Sebastian Kemper              
                                              1 Janu                          
                                              1 Vyrva Igor                    
                                              1 Luke-Jr                       
                                              1 Dan Cropp                     
                                              1 Lucas Mendes                  
                                              1 SÃ©bastien Duthil             
                                              1 Luke-Jr                       
                                              1 Antoni Goldstein              

     ----------------------------------------------------------------------

                                 Closed Issues

                                 [Back to Top]

   This is a list of all issues from the issue tracker that were closed by
   changes that went into this release.

  New Feature

    Category: Resources/res_ari_channels

   ASTERISK-28320: Added ARI resource
   /ari/channels/{channelid}/rtp_statistics
   Reported by: sungtae kim
     * [bbc13b1f1f] sungtae kim -- res/res_ari: Added ARI resource
       /ari/channels/{channelId}/rtp_statistics

    Category: Resources/res_pjsip

   ASTERISK-28375: res_pjsip: New configuration setting to allow disabling
   norefersub
   Reported by: Dan Cropp
     * [eca8c440d2] Dan Cropp -- res_pjsip: Added a norefersub configuration
       setting

    Category: Resources/res_pjsip_refer

   ASTERISK-28375: res_pjsip: New configuration setting to allow disabling
   norefersub
   Reported by: Dan Cropp
     * [eca8c440d2] Dan Cropp -- res_pjsip: Added a norefersub configuration
       setting

  Bug

    Category: Addons/chan_ooh323

   ASTERISK-28348: Failed to initialize OOH323 endpoint-OOH323 Disabled
   Reported by: Dmitry Shubin
     * [eec16b8e99] Alexander Anikin -- chan_ooh323: fix h323 log file path

    Category: Applications/app_amd

   ASTERISK-28143: app_amd: Infinite loop on silent calls
   Reported by: Abhay Gupta
     * [1d214a3623] Abhay Gupta -- app_amd: Fix infinite loop on silent calls

    Category: Applications/app_voicemail

   ASTERISK-27935: app_voicemail: emailbody per user can't contain commas
   Reported by: SÃ©bastien Duthil
     * [d0a8334e4f] Sean Bright -- app_voicemail: Don't split mailbox options
       on comma

    Category: Channels/chan_dahdi

   ASTERISK-28427: new mwi.h include missing from some dahdi source files,
   causes build failure
   Reported by: Guido Falsi
     * [e1977f4e85] Guido Falsi -- chan_dahdi: add missing include.

    Category: Channels/chan_local

   ASTERISK-28399: channel.c: Exceptionally long queue length queuing
   Reported by: Abhay Gupta
     * [9a0fa51443] Abhay Gupta -- stasis: Hangup channel for Local channel
       No such extension error

    Category: Channels/chan_pjsip

   ASTERISK-28379: pjsip: show channelstats incorrect information output
   Reported by: Vyrva Igor
     * [ece29db9bd] Joshua Colp -- res_rtp_asterisk: Fix sequence number
       cycling and packet loss count.
   ASTERISK-28371: chan_pjsip: DTMF Mode auto_info fallback lead to both
   inband and info
   Reported by: Salah Ahmed
     * [7e5b4b8616] Salah Ahmed -- chan_pjsip: DTMF Mode auto_info fallback
       lead to both inband and info

    Category: Channels/chan_sip/General

   ASTERISK-28362: strtok_r() makes gcc compile warning
   Reported by: sungtae kim
     * [8961d9ca8b] Ben Ford -- build: Fix compiler warnings/errors.

    Category: Core/BuildSystem

   ASTERISK-28392: The no-partial-inlining flag isn't passed to the bundled
   pjproject or jansson builds
   Reported by: George Joseph
     * [543d487746] George Joseph -- build: Pass --fno-partial-inlining to
       third-party when appropriate
   ASTERISK-28374: latest asterisk unconditionally launch gcc --version, even
   if the compiler is different
   Reported by: Guido Falsi
     * [4dcfa8d127] Guido Falsi -- core/buildsystem: check the actual
       compiler being version

    Category: Core/Stasis

   ASTERISK-28353: stasis: Crash at shutdown when statistics enabled
   Reported by: Joshua C. Colp
     * [8d35a30a3f] Ben Ford -- stasis: Fix crash at shutdown.

    Category: General

   ASTERISK-28412: GCC 9 catches more string formatting issues
   Reported by: George Joseph
     * [e7734476c6] George Joseph -- Fixes for GCC 9
   ASTERISK-28319: musl: Crash on startup when loading modules
   Reported by: Sebastian Kemper
     * [8ec4de7501] Sebastian Kemper -- loader: support for permanent
       dlopen()

    Category: PBX/General

   ASTERISK-20182: Parsing a label beginning with a numeric character in all
   Goto/GotoIf/GotoIfTime application causes unexpected behavior
   Reported by: Janu
     * [f91262272e] Sean Bright -- pbx.c: Properly parse labels with leading
       digits

    Category: PBX/pbx_ael

   ASTERISK-17799: AEL reload causes loss of control in a macro
   Reported by: Kirill Katsnelson
     * [116dc9c9b3] Sean Bright -- res_ael: Create consistent label names
       across reloads
   ASTERISK-18593: AEL for loops use Macro app and pipe delimiter
   Reported by: Luke-Jr
     * [ea3109beaa] Sean Bright -- res_ael: Use Gosub in for loop expressions
   ASTERISK-14939: AEL parsers does not find existing label
   Reported by: klaus3000
     * [71c7864d1d] Sean Bright -- res_ael: Fix pattern matching against
       literal '+'

    Category: Resources/res_ari

   ASTERISK-26718: ARI: Bridge destroying doesn't work as expected
   Reported by: Marin Odrljin
     * [f599ebd29e] Holger Hans Peter Freyther -- stasis: Call callbacks when
       imparting fails

    Category: Resources/res_indications

   ASTERISK-28391: res_indications: Crash requesting autocomplete on
   indications cli command
   Reported by: Lucas Mendes
     * [daed593cfa] Lucas Mendes -- res_indications: Fix indications remove
       command autocomplete

    Category: Resources/res_pjsip_registrar

   ASTERISK-28402: res_pjsip_registrar: SEGV in registrar_find_contact
   Reported by: Ross Beer
     * [5002169d6a] George Joseph -- res_pjsip: Check return from
       pjsip_parse_uri calls

    Category: Resources/res_rtp_asterisk

   ASTERISK-28255: res_rtp_asterisk: REMB RTCP packet sending may be
   incorrect
   Reported by: Joshua C. Colp
     * [94eeba6147] Kevin Harwell -- bridge_softmix: use a float type to
       store the internal REMB bitrate

    Category: Resources/res_stasis

   ASTERISK-27756: bridge: Failure to impart a channel results in bad data
   causing crash
   Reported by: Abhay Gupta
     * [39c5188bec] Abhay Gupta -- stasis: Only place stasis created and
       dialed channels into dial bridge.
   ASTERISK-26718: ARI: Bridge destroying doesn't work as expected
   Reported by: Marin Odrljin
     * [f599ebd29e] Holger Hans Peter Freyther -- stasis: Call callbacks when
       imparting fails

    Category: Tests/NewFeature

   ASTERISK-17695: 1.8.3.2 extenpatternmatchnew=yes cannot find extensions
   with '-' in them
   Reported by: test011
     * [9b7a64cbf0] Sean Bright -- pbx.c: Ignore dashes in extensions when
       using extenpatternmatchnew

    Category: Utilities/aelparse

   ASTERISK-18593: AEL for loops use Macro app and pipe delimiter
   Reported by: Luke-Jr
     * [ea3109beaa] Sean Bright -- res_ael: Use Gosub in for loop expressions

    Category: Utilities/conf2ael

   ASTERISK-18593: AEL for loops use Macro app and pipe delimiter
   Reported by: Luke-Jr
     * [ea3109beaa] Sean Bright -- res_ael: Use Gosub in for loop expressions

  Improvement

    Category: Applications/app_confbridge

   ASTERISK-28401: app_confbridge: Add *_all remb behavior variants
   Reported by: Joshua C. Colp
     * [d861ebdca8] Joshua Colp -- app_confbridge: Add "all" variants of REMB
       behavior.

    Category: Applications/app_dial

   ASTERISK-28363: Millisecond-resolution call stats including PDD in channel
   variables
   Reported by: Antoni Goldstein
     * [d6b37e2926] Antoni Goldstein -- app_dial.c: RINGTIME, PROGRESSTIME
       and ms resolution dial timings

    Category: Applications/app_voicemail

   ASTERISK-20207: Asterisk should clear out any .lock files in the voice
   mail directory on startup.
   Reported by: Steven Wheeler
     * [34b9b65098] Sean Bright -- app_voicemail: Cleanup stale lock files on
       module load

    Category: Bridges/bridge_softmix

   ASTERISK-28401: app_confbridge: Add *_all remb behavior variants
   Reported by: Joshua C. Colp
     * [d861ebdca8] Joshua Colp -- app_confbridge: Add "all" variants of REMB
       behavior.

    Category: Core/BuildSystem

   ASTERISK-28111: build: CHANGES/UPGRADE are irritating to work with.
   Reported by: Corey Farrell
     * [ef404fef91] Ben Ford -- build: Revise CHANGES and UPGRADE.txt
       handling.

    Category: PBX/General

   ASTERISK-28264: Added topic_all container
   Reported by: sungtae kim
     * [5815597a21] sungtae kim -- stasis.c: Added topic_all container

    Category: Resources/res_ari_channels

   ASTERISK-28343: Added app_name, app_data to channel type
   Reported by: sungtae kim
     * [d5a318f148] sungtae kim -- main/json.c: Added app_name, app_data to
       channel type

    Category: Resources/res_pjsip_sdp_rtp

   ASTERISK-28400: res_rtp_asterisk / res_pjsip_sdp_rtp: Add support for
   transport-cc
   Reported by: Joshua C. Colp
     * [5023f02b2d] Joshua Colp -- rtp: Add support for transport-cc in
       receiver direction.

    Category: Resources/res_rtp_asterisk

   ASTERISK-28400: res_rtp_asterisk / res_pjsip_sdp_rtp: Add support for
   transport-cc
   Reported by: Joshua C. Colp
     * [5023f02b2d] Joshua Colp -- rtp: Add support for transport-cc in
       receiver direction.

     ----------------------------------------------------------------------

                                  Open Issues

                                 [Back to Top]

   This is a list of all open issues from the issue tracker that were
   referenced by changes that went into this release.

  Bug

    Category: Resources/res_pjsip

   ASTERISK-28161: Removal of Previous Patch Causes PJSIP Timer Issues
   Reported by: Ross Beer
     * [33ed2e1bb8] Joshua Colp -- pjproject-bundled: Add upstream timer
       fixes
     * [d4cd2a9706] Sean Bright -- pjproject: Add timer patch from pjproject
       r5934

     ----------------------------------------------------------------------

                      Commits Not Associated with an Issue

                                 [Back to Top]

   This is a list of all changes that went into this release that did not
   reference a JIRA issue.

   +------------------------------------------------------------------------+
   | Revision   | Author               | Summary                            |
   |------------+----------------------+------------------------------------|
   | 05f2b24110 | Asterisk Development | Update CHANGES and UPGRADE.txt for |
   |            | Team                 | 16.4.0                             |
   |------------+----------------------+------------------------------------|
   | f23d0002c6 | Ben Ford             | build: Fix file format in          |
   |            |                      | CHANGES-staging.                   |
   |------------+----------------------+------------------------------------|
   | 5af18dc5e3 | Asterisk Development | Update for 16.4.0-rc1              |
   |            | Team                 |                                    |
   |------------+----------------------+------------------------------------|
   | 79b15d0b30 | George Joseph        | res_rtp_asterisk: Add ability to   |
   |            |                      | propose local address in ICE       |
   |------------+----------------------+------------------------------------|
   | 941dead08d | Ben Ford             | pjsip_options.c: Allow immediate   |
   |            |                      | qualifies for new contacts.        |
   |------------+----------------------+------------------------------------|
   | edc3e0df1a | Kevin Harwell        | conversions.c: Add conversions for |
   |            |                      | largest max sized integer          |
   |------------+----------------------+------------------------------------|
   | e3a758975d | Kevin Harwell        | mwi core: Move core MWI            |
   |            |                      | functionality into its own files   |
   |------------+----------------------+------------------------------------|
   | e281911667 | George Joseph        | ARI: Bump non-breaking version     |
   |            |                      | number to 4.0.2                    |
   |------------+----------------------+------------------------------------|
   | 7487fc88d2 | George Joseph        | res_remb_modifier: Propertly       |
   |            |                      | initialize bitrate to 0.0          |
   |------------+----------------------+------------------------------------|
   |            |                      | res_mwi_devstate: Specify          |
   | 022e784b7a | Sean Bright          | AST_MODFLAG_LOAD_ORDER to enable   |
   |            |                      | load priority                      |
   |------------+----------------------+------------------------------------|
   | 18fe583d12 | George Joseph        | CI: Move test group config files   |
   |            |                      | to Jenkins                         |
   |------------+----------------------+------------------------------------|
   | 898765d919 | George Joseph        | ARI: Run 'make ari-stubs'          |
   |------------+----------------------+------------------------------------|
   | acfbfef8ad | Alexei Gradinari     | res_pjsip: Fix transport_states    |
   |            |                      | ref leak                           |
   |------------+----------------------+------------------------------------|
   | 85bbb7a3e8 | Chris-Savinovich     | config.c: Fix a crash in extconfig |
   |            |                      | parsing                            |
   |------------+----------------------+------------------------------------|
   | 1464a6b80f | George Joseph        | CI: Add --no-dev-mode option to    |
   |            |                      | buildAsterisk.sh                   |
   |------------+----------------------+------------------------------------|
   | ae1aeb930e | Matthew Fredrickson  | res/res_rtp_asterisk: Enable       |
   |            |                      | rxjitter calculation for video     |
   +------------------------------------------------------------------------+

     ----------------------------------------------------------------------

                                Diffstat Results

                                 [Back to Top]

   This is a summary of the changes to the source code that went into this
   release that was generated using the diffstat utility.

 UPGRADE-1.2.txt                                                                                 |  218
 UPGRADE-1.4.txt                                                                                 |  497 -
 UPGRADE-1.6.txt                                                                                 |  277 -
 UPGRADE-1.8.txt                                                                                 |  343 -
 UPGRADE-10.txt                                                                                  |   92
 UPGRADE-11.txt                                                                                  |  280 -
 UPGRADE-12.txt                                                                                  |  478 -
 UPGRADE-13.txt                                                                                  |  399 -
 UPGRADE-14.txt                                                                                  |  115
 UPGRADE-15.txt                                                                                  |   63
 asterisk-16.3.0-summary.html                                                                    |  267 -
 asterisk-16.3.0-summary.txt                                                                     |  658 --
 b/.version                                                                                      |    2
 b/CHANGES                                                                                       |   49
 b/ChangeLog                                                                                     |  701 ++
 b/Makefile.rules                                                                                |    9
 b/UPGRADE.txt                                                                                   | 2587 +++++++++-
 b/addons/chan_ooh323.c                                                                          |   19
 b/addons/chan_ooh323.h                                                                          |    1
 b/addons/ooh323c/src/ooh323ep.c                                                                 |    6
 b/addons/ooh323c/src/ooh323ep.h                                                                 |    2
 b/apps/app_adsiprog.c                                                                           |    2
 b/apps/app_amd.c                                                                                |   10
 b/apps/app_confbridge.c                                                                         |    6
 b/apps/app_dial.c                                                                               |   87
 b/apps/app_followme.c                                                                           |    2
 b/apps/app_minivm.c                                                                             |    1
 b/apps/app_voicemail.c                                                                          |   56
 b/apps/confbridge/conf_config_parser.c                                                          |   35
 b/apps/confbridge/include/confbridge.h                                                          |    3
 b/asterisk-16.4.0-rc1-summary.html                                                              |  228
 b/asterisk-16.4.0-rc1-summary.txt                                                               |  545 ++
 b/bridges/bridge_softmix.c                                                                      |  124
 b/bridges/bridge_softmix/include/bridge_softmix_internal.h                                      |    2
 b/channels/chan_console.c                                                                       |    4
 b/channels/chan_dahdi.c                                                                         |    2
 b/channels/chan_dahdi.h                                                                         |    1
 b/channels/chan_iax2.c                                                                          |    5
 b/channels/chan_mgcp.c                                                                          |    1
 b/channels/chan_pjsip.c                                                                         |    2
 b/channels/chan_sip.c                                                                           |    2
 b/channels/chan_skinny.c                                                                        |    1
 b/channels/chan_unistim.c                                                                       |    1
 b/channels/sig_pri.c                                                                            |    1
 b/configs/samples/confbridge.conf.sample                                                        |    6
 b/configs/samples/pjsip.conf.sample                                                             |    5
 b/configs/samples/rtp.conf.sample                                                               |    8
 b/configure                                                                                     |   50
 b/configure.ac                                                                                  |   14
 b/contrib/ast-db-manage/config/versions/3a094a18e75b_pjsip_add_norefersub.py                    |   39
 b/contrib/realtime/mysql/mysql_config.sql                                                       |    6
 b/contrib/realtime/postgresql/postgresql_config.sql                                             |    6
 b/doc/CHANGES-staging/README.md                                                                 |   28
 b/doc/UPGRADE-staging/README.md                                                                 |   30
 b/include/asterisk/app.h                                                                        |  195
 b/include/asterisk/autoconfig.h.in                                                              |    3
 b/include/asterisk/bridge.h                                                                     |    9
 b/include/asterisk/channel.h                                                                    |   24
 b/include/asterisk/conversions.h                                                                |   20
 b/include/asterisk/json.h                                                                       |   16
 b/include/asterisk/mwi.h                                                                        |  242
 b/include/asterisk/res_pjsip.h                                                                  |    7
 b/include/asterisk/rtp_engine.h                                                                 |   18
 b/include/asterisk/stasis.h                                                                     |   43
 b/main/app.c                                                                                    |  329 -
 b/main/asterisk.c                                                                               |    2
 b/main/bridge.c                                                                                 |    1
 b/main/channel.c                                                                                |   18
 b/main/config.c                                                                                 |    5
 b/main/conversions.c                                                                            |   39
 b/main/indications.c                                                                            |    4
 b/main/json.c                                                                                   |   17
 b/main/loader.c                                                                                 |  147
 b/main/manager.c                                                                                |    1
 b/main/manager_mwi.c                                                                            |    1
 b/main/media_cache.c                                                                            |    4
 b/main/mwi.c                                                                                    |  369 +
 b/main/pbx.c                                                                                    |   28
 b/main/rtp_engine.c                                                                             |   89
 b/main/stasis.c                                                                                 |  448 +
 b/main/stasis_channels.c                                                                        |    5
 b/pbx/pbx_dundi.c                                                                               |    4
 b/res/ael/pval.c                                                                                |   30
 b/res/ari/ari_model_validators.c                                                                |  412 +
 b/res/ari/ari_model_validators.h                                                                |   55
 b/res/ari/resource_channels.c                                                                   |   58
 b/res/ari/resource_channels.h                                                                   |   13
 b/res/res_ari_channels.c                                                                        |   71
 b/res/res_corosync.c                                                                            |    2
 b/res/res_mwi_devstate.c                                                                        |    4
 b/res/res_mwi_external.c                                                                        |    1
 b/res/res_pjsip.c                                                                               |    7
 b/res/res_pjsip/config_global.c                                                                 |   21
 b/res/res_pjsip/pjsip_message_filter.c                                                          |   13
 b/res/res_pjsip/pjsip_options.c                                                                 |   47
 b/res/res_pjsip_mwi.c                                                                           |    2
 b/res/res_pjsip_publish_asterisk.c                                                              |    2
 b/res/res_pjsip_pubsub.c                                                                        |    2
 b/res/res_pjsip_refer.c                                                                         |    5
 b/res/res_pjsip_registrar.c                                                                     |    4
 b/res/res_pjsip_sdp_rtp.c                                                                       |   14
 b/res/res_remb_modifier.c                                                                       |   67
 b/res/res_rtp_asterisk.c                                                                        |  480 +
 b/res/res_smdi.c                                                                                |    1
 b/res/res_xmpp.c                                                                                |    1
 b/res/stasis/control.c                                                                          |   17
 b/rest-api/api-docs/channels.json                                                               |  204
 b/rest-api/resources.json                                                                       |    2
 b/tests/CI/buildAsterisk.sh                                                                     |   16
 b/tests/CI/gateTestGroups.json                                                                  |    7
 b/tests/CI/gates.jenkinsfile                                                                    |   11
 b/tests/CI/periodic-dailyTestGroups.json                                                        |    6
 b/tests/CI/periodics-daily.jenkinsfile                                                          |    7
 b/tests/test_conversions.c                                                                      |   48
 b/tests/test_json.c                                                                             |   18
 b/tests/test_stasis_channels.c                                                                  |    4
 b/third-party/jansson/Makefile                                                                  |    7
 b/third-party/pjproject/Makefile                                                                |   18
 b/third-party/pjproject/patches/0030-Re-2176-Removed-pop_freelist-push_freelist-after-rem.patch |   37
 b/third-party/pjproject/patches/0031-Re-2191-transport-timer-cleanup.patch                      |  372 +
 b/third-party/pjproject/patches/0032-Re-2191-Fixed-crash-in-SIP-transport-destroy-due-to-.patch |  117
 121 files changed, 8164 insertions(+), 4503 deletions(-)
