]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Update for certified/16.8-cert4-rc3 certified/16.8-cert4-rc3
authorAsterisk Development Team <asteriskteam@digium.com>
Tue, 6 Oct 2020 22:53:33 +0000 (17:53 -0500)
committerAsterisk Development Team <asteriskteam@digium.com>
Tue, 6 Oct 2020 22:53:33 +0000 (17:53 -0500)
.version
ChangeLog
asterisk-certified-16.8-cert4-rc2-summary.html [deleted file]
asterisk-certified-16.8-cert4-rc2-summary.txt [deleted file]
asterisk-certified-16.8-cert4-rc3-summary.html [new file with mode: 0644]
asterisk-certified-16.8-cert4-rc3-summary.txt [new file with mode: 0644]

index f6bc83f03fb5b63b4b4fc480425bc0c6426206f7..5660463bc43b8f66abe35c1c10b51deb6b75b3e8 100644 (file)
--- a/.version
+++ b/.version
@@ -1 +1 @@
-certified/16.8-cert4-rc2
\ No newline at end of file
+certified/16.8-cert4-rc3
\ No newline at end of file
index f975dd55a93a26e2c9af0bdbc21d1f96a34f9eb5..c9406f499d17aa0a67161180be43d63023990f0a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,539 @@
+2020-10-06 22:53 +0000  Asterisk Development Team <asteriskteam@digium.com>
+
+       * asterisk certified/16.8-cert4-rc3 Released.
+
+2020-09-22 05:05 +0000 [d5df3b95c8]  Joshua C. Colp <jcolp@sangoma.com>
+
+       * res_pjsip_session: Fix stream name memory leak.
+
+         When constructing a stream name based on the media type
+         and position the allocated name was not being freed
+         causing a leak.
+
+         Change-Id: I52510863b24a2f531f0a55b440bb2c81844029de
+
+2020-09-22 05:13 +0000 [3e54af3afb]  Joshua C. Colp <jcolp@sangoma.com>
+
+       * res_pjsip_session: Fix session reference leak.
+
+         The ast_sip_dialog_get_session function returns the session
+         with reference count increased. This was not taken into
+         account and was causing sessions to remain around when they
+         should not be.
+
+         ASTERISK-29089
+
+         Change-Id: I430fa721b0a824311a59effec6056e9ec528e3e8
+
+2020-09-17 11:40 +0000 [f74ecc4498]  George Joseph <gjoseph@digium.com>
+
+       * logger.h: Fix ast_trace to respect scope_level
+
+         ast_trace() was always emitting messages when it's level was set to -1
+         because it was ignoring scope_level.
+
+         Change-Id: I849c8f4f4613899c37f82be0202024e7d117e506
+
+2020-09-17 13:01 +0000 [251c9a1891]  George Joseph <gjoseph@digium.com>
+
+       * bridge_softmix/sfu_topologies_on_join: Ignore topology change failures
+
+         When a channel joins a bridge, we do topology change requests on all
+         existing channels to add the new participant to them.  However the
+         announcer channel will return an error because it doesn't support
+         topology in the first place.  Unfortunately, there doesn't seem to be a
+         reliable way to tell if the error is expected or not so the error is
+         ignored for all channels.  If the request fails on a "real" channel,
+         that channel just won't get the new participant's video.
+
+         Change-Id: Ic95db4683f27d224c1869fe887795d6b9fdea4f0
+
+2020-09-11 11:09 +0000 [1620e94af5]  George Joseph <gjoseph@digium.com>
+
+       * res_pjsip_session: Fix issue with COLP and 491
+
+         The recent 491 changes introduced a check to determine if the active
+         and pending topologies were equal and to suppress the re-invite if they
+         were. When a re-invite is sent for a COLP-only change, the pending
+         topology is NULL so that check doesn't happen and the re-invite is
+         correctly sent. Of course, sending the re-invite sets the pending
+         topology.  If a 491 is received, when we resend the re-invite, the
+         pending topology is set and since we didn't request a change to the
+         topology in the first place, pending and active topologies are equal so
+         the topologies-equal check causes the re-invite to be erroneously
+         suppressed.
+
+         This change checks if the topologies are equal before we run the media
+         state resolver (which recreates the pending topology) so that when we
+         do the final topologies-equal check we know if this was a topology
+         change request.  If it wasn't a change request, we don't suppress
+         the re-invite even though the topologies are equal.
+
+         ASTERISK-29014
+
+         Change-Id: Iffd7dd0500301156a566119ebde528d1a9573314
+
+2020-08-20 15:09 +0000 [f67c58aa13]  George Joseph <gjoseph@digium.com>
+
+       * debugging:  Add enough to choke a mule
+
+         Added to:
+          * bridges/bridge_softmix.c
+          * channels/chan_pjsip.c
+          * include/asterisk/res_pjsip_session.h
+          * main/channel.c
+          * res/res_pjsip_session.c
+
+         There NO functional changes in this commit.
+
+         Change-Id: I06af034d1ff3ea1feb56596fd7bd6d7939dfdcc3
+
+2020-08-20 11:21 +0000 [9e54db24b6]  George Joseph <gjoseph@digium.com>
+
+       * res_pjsip_session:  Handle multi-stream re-invites better
+
+         When both Asterisk and a UA send re-invites at the same time, both
+         send 491 "Transaction in progress" responses to each other and back
+         off a specified amount of time before retrying. When Asterisk
+         prepares to send its re-invite, it sets up the session's pending
+         media state with the new topology it wants, then sends the
+         re-invite.  Unfortunately, when it received the re-invite from the
+         UA, it partially processed the media in the re-invite and reset
+         the pending media state before sending the 491 losing the state it
+         set in its own re-invite.
+
+         Asterisk also was not tracking re-invites received while an existing
+         re-invite was queued resulting in sending stale SDP with missing
+         or duplicated streams, or no re-invite at all because we erroneously
+         determined that a re-invite wasn't needed.
+
+         There was also an issue in bridge_softmix where we were using a stream
+         from the wrong topology to determine if a stream was added.  This also
+         caused us to erroneously determine that a re-invite wasn't needed.
+
+         Regardless of how the delayed re-invite was triggered, we need to
+         reconcile the topology that was active at the time the delayed
+         request was queued, the pending topology of the queued request,
+         and the topology currently active on the session.  To do this we
+         need a topology resolver AND we need to make stream named unique
+         so we can accurately tell what a stream has been added or removed
+         and if we can re-use a slot in the topology.
+
+         Summary of changes:
+
+          * bridge_softmix:
+            * We no longer reset the stream name to "removed" in
+              remove_all_original_streams().  That was causing  multiple streams
+              to have the same name and wrecked the checks for duplicate streams.
+
+            * softmix_bridge_stream_sources_update() was checking the old_stream
+              to see if it had the softmix prefix and not considering the stream
+              as "new" if it did.  If the stream in that slot has something in it
+              because another re-invite happened, then that slot in old might
+              have a softmix stream but the same stream in new might actually
+              be a new one.  Now we check the new_stream's name instead of
+              the old_stream's.
+
+          * stream:
+            * Instead of using plain media type name ("audio", "video", etc) as
+              the default stream name, we now append the stream position to it
+              to make it unique.  We need to do this so we can distinguish multiple
+              streams of the same type from each other.
+
+            * When we set a stream's state to REMOVED, we no longer reset its
+              name to "removed" or destroy its metadata.  Again, we need to
+              do this so we can distinguish multiple streams of the same
+              type from each other.
+
+          * res_pjsip_session:
+            * Added resolve_refresh_media_states() that takes in 3 media states
+              and creates an up-to-date pending media state that includes the changes
+              that might have happened while a delayed session refresh was in the
+              delayed queue.
+
+            * Added is_media_state_valid() that checks the consistency of
+              a media state and returns a true/false value. A valid state has:
+              * The same number of stream entries as media session entries.
+                  Some media session entries can be NULL however.
+              * No duplicate streams.
+              * A valid stream for each non-NULL media session.
+              * A stream that matches each media session's stream_num
+                and media type.
+
+            * Updated handle_incoming_sdp() to set the stream name to include the
+              stream position number in the name to make it unique.
+
+            * Updated the ast_sip_session_delayed_request structure to include both
+              the pending and active media states and updated the associated delay
+              functions to process them.
+
+            * Updated sip_session_refresh() to accept both the pending and active
+              media states that were in effect when the request was originally queued
+              and to pass them on should the request need to be delayed again.
+
+            * Updated sip_session_refresh() to call resolve_refresh_media_states()
+              and substitute its results for the pending state passed in.
+
+            * Updated sip_session_refresh() with additional debugging.
+
+            * Updated session_reinvite_on_rx_request() to simply return PJ_FALSE
+              to pjproject if a transaction is in progress.  This stops us from
+              creating a partial pending media state that would be invalid later on.
+
+            * Updated reschedule_reinvite() to clone both the current pending and
+              active media states and pass them to delay_request() so the resolver
+              can tell what the original intention of the re-invite was.
+
+            * Added a large unit test for the resolver.
+
+         ASTERISK-29014
+
+         Change-Id: Id3440972943c611a15f652c6c569fa0e4536bfcb
+
+2020-08-31 11:14 +0000 [c2701d8069]  Ben Ford <bford@digium.com>
+
+       * Bridging: Use a ref to bridge_channel's channel to prevent crash.
+
+         There's a race condition with bridging where a bridge can be torn down
+         causing the bridge_channel's ast_channel to become NULL when it's still
+         needed. This particular case happened with attended transfers, but the
+         crash occurred when trying to publish a stasis message. Now, the
+         bridge_channel is locked, a ref to the ast_channel is obtained, and that
+         ref is passed down the chain.
+
+         Change-Id: Ic48715c0c041615d17d286790ae3e8c61bb28814
+
+2020-08-20 08:32 +0000 [fb78adce21]  George Joseph <gjoseph@digium.com>
+
+       * stream.c:  Added 2 more debugging utils and added pos to stream string
+
+          * Added ast_stream_to_stra and ast_stream_topology_to_stra() macros
+            which are shortcuts for
+               ast_str_tmp(256, ast_stream_to_str(stream, &STR_TMP))
+
+          * Added the stream position to the string representation of the
+            stream.
+
+          * Fixed some formatting in ast_stream_to_str().
+
+         Change-Id: Idaf4cb0affa46d4dce58a73a111f35435331cc4b
+
+2020-08-19 07:37 +0000 [d942fe4837]  George Joseph <gjoseph@digium.com>
+
+       * scope_trace: Added debug messages and added additional macros
+
+         The SCOPE_ENTER and SCOPE_EXIT* macros now print debug messages
+         at the same level as the scope level.  This allows the same
+         messages to be printed to the debug log when AST_DEVMODE
+         isn't enabled.
+
+         Also added a few variants of the SCOPE_EXIT macros that will
+         also call ast_log instead of ast_debug to make it easier to
+         use scope tracing and still print error messages.
+
+         Change-Id: I7fe55f7ec28069919a0fc0b11a82235ce904cc21
+
+2020-08-14 11:13 +0000 [0430e1b3c3]  George Joseph <gjoseph@digium.com>
+
+       * logger.c: Added a new log formatter called "plain"
+
+         Added a new log formatter called "plain" that always prints
+         file, function and line number if available (even for verbose
+         messages) and never prints color control characters.  It also
+         doesn't apply any special formatting for verbose messages.
+         Most suitable for file output but can be used for other channels
+         as well.
+
+         You use it in logger.conf like so:
+         debug => [plain]debug
+         console => [plain]error,warning,debug,notice,pjsip_history
+         messages => [plain]warning,error,verbose
+
+         Change-Id: I4fdfe4089f66ce2f9cb29f3005522090dbb5243d
+
+2020-08-28 09:34 +0000 [950784a446]  George Joseph <gjoseph@digium.com>
+
+       * ast_coredumper: Fix issues with naming
+
+         If you run ast_coredumper --tarball-coredumps in the same directory
+         as the actual coredump, tar can fail because the link to the
+         actual coredump becomes recursive.  The resulting tarball will
+         have everything _except_ the coredump (which is usually what
+         you need)
+
+         There's also an issue that the directory name in the tarball
+         is the same as the coredump so if you extract the tarball the
+         directory it creates will overwrite the coredump.
+
+         So:
+
+          * Made the link to the coredump use the absolute path to the
+            file instead of a relative one.  This prevents the recursive
+            link and allows tar to add the coredump.
+
+          * The tarballed directory is now named <coredump>.output instead
+            of just <coredump> so if you expand the tarball it won't
+            overwrite the coredump.
+
+         Change-Id: I8b3eeb26e09a577c702ff966924bb0a2f9a759ea
+
+2020-08-18 04:36 +0000 [7b1ace9040]  Joshua C. Colp <jcolp@sangoma.com>
+
+       * res_pjsip_session: Don't aggressively terminate on failed re-INVITE.
+
+         Per the RFC when an outgoing re-INVITE is done we should
+         only terminate the dialog if a 481 or 408 is received.
+
+         ASTERISK-29033
+
+         Change-Id: I6c3ff513aa41005d02de0396ba820083e9b18503
+
+2020-07-23 14:47 +0000 [d189bf9ae5]  George Joseph <gjoseph@digium.com>
+
+       * res_pjsip_session: Ensure reused streams have correct bundle group
+
+         When a bundled stream is removed, its bundle_group is reset to -1.
+         If that stream is later reused, the bundle parameters on session
+         media need to be reset correctly it could mistakenly be rebundled
+         with a stream that was removed and never reused.  Since the removed
+         stream has no rtp instance, a crash will result.
+
+         Change-Id: Ie2b792220f9291587ab5f9fd123145559dba96d7
+
+2020-07-13 04:41 +0000 [b8bb63c82f]  Joshua C. Colp <jcolp@sangoma.com>
+
+       * pjsip: Add timer refactor patch and timer 0 cancellation.
+
+         There have been numerous timer issues over the years which
+         resulted in Teluu doing a major refactor of the timer
+         implementation whereby the timer entries themselves are not
+         trusted. This change backports this refactor which has
+         been shown to resolve timer crashes.
+
+         Additionally another patch has been backported to prevent
+         timer entries with an internal id of 0 from being canceled.
+         This would result in the invalid timer id of 0 being placed
+         into the timer heap causing issues. This is also a backport.
+
+         Change-Id: I1ba318b1f153a6dd7458846396e2867282b428e7
+         (cherry picked from commit 9ce6d46aea3a7ec70fe923a58cb2aafaa1ea64a8)
+
+2020-06-10 17:05 +0000 [5e58fc3939]  Kevin Harwell <kharwell@digium.com>
+
+       * manager - Add Content-Type parameter to the SendText action
+
+         This patch allows a user of AMI to now specify the type of message
+         content contained within by setting the 'Content-Type' parameter.
+
+         Note, the AMI version has been bumped for this change.
+
+         ASTERISK-28945 #close
+
+         Change-Id: Ibb5315702532c6b954e1498beddc8855fabdf4bb
+
+2020-08-06 12:51 +0000 [4e9e503132]  cmaj <chris@penguinpbx.com>
+
+       * Makefile: Fix certified version numbers
+
+         Adds sed before awk to produce reasonable ASTERISKVERSIONNUM
+         on certified versions of Asterisk eg. 16.8-cert3 is 160803
+         instead of the previous 00800.
+
+         ASTERISK-29021 #close
+
+         Change-Id: Icf241df0ff6db09011b8c936a317a84b0b634e16
+
+2020-07-05 18:51 +0000 [8ebe4c772e]  George Joseph <gjoseph@digium.com>
+
+       * Scope Trace: Make it easier to trace through synchronous tasks
+
+         Tracing through synchronous tasks was a little troublesome because
+         the new thread's stack counter reset to 0.  This change allows
+         a synchronous task to set its trace level to be the same as the
+         thread that pushed the task.  For now, the task's level has to be
+         passed in the task's data structure but a future enhancement to the
+         taskprocessor subsystem could automatically set the trace level
+         of the servant to be that of the caller.
+
+         This doesn't really make sense for async tasks because you never
+         know when they're going to run anyway.
+
+         Change-Id: Ib8049c0b815063a45d8c7b0cb4e30b7b87b1d825
+
+2020-08-07 06:58 +0000 [8076ed59f0]  George Joseph <gjoseph@digium.com>
+
+       * scope_trace: Add/update utilities
+
+         * Added a AST_STREAM_STATE_END sentinel
+         * Add ast_stream_to_str()
+         * Add ast_stream_state_to_str()
+         * Add ast_stream_get_format_count()
+         * Add ast_stream_topology_to_str()
+         * Add ast_stream_topology_get_active_count()
+         * Add ast_format_cap_append_names()
+         * Add ast_sip_session_get_name()
+
+         Change-Id: I132eb5971ea41509c660f64e9113cda8c9013b0b
+
+2020-06-30 08:56 +0000 [9d3b01e874]  George Joseph <gjoseph@digium.com>
+
+       * Scope Trace:  Add some new tracing macros and an ast_str helper
+
+         Created new SCOPE_ functions that don't depend on RAII_VAR.  Besides
+         generating less code, the use of the explicit SCOPE_EXIT macros
+         capture the line number where the scope exited.  The RAII_VAR
+         versions can't do that.
+
+          * SCOPE_ENTER(level, ...): Like SCOPE_TRACE but doesn't use
+            RAII_VAR and therefore needs needs one of...
+
+          * SCOPE_EXIT(...): Decrements the trace stack counter and optionally
+            prints a message.
+
+          * SCOPE_EXIT_EXPR(__expr, ...): Decrements the trace stack counter,
+            optionally prints a message, then executes the expression.
+            SCOPE_EXIT_EXPR(break, "My while got broken\n");
+
+          * SCOPE_EXIT_RTN(, ...): Decrements the trace stack counter,
+            optionally prints a message, then returns without a value.
+            SCOPE_EXIT_RTN("Bye\n");
+
+          * SCOPE_EXIT_RTN_VALUE(__return_value, ...): Decrements the trace
+            stack counter, optionally prints a message, then returns the value
+            specified.
+            SCOPE_EXIT_RTN_VALUE(rc, "Returning with RC: %d\n", rc);
+
+         Create an ast_str helper ast_str_tmp() that allocates a temporary
+         ast_str that can be passed to a function that needs it, then frees
+         it.  This makes using the above macros easier.  Example:
+
+            SCOPE_ENTER(1, Format Caps 1: %s  Format Caps 2: %s\n",
+                ast_str_tmp(32, ast_format_cap_get_names(cap1, &STR_TMP),
+                ast_str_tmp(32, ast_format_cap_get_names(cap2, &STR_TMP));
+
+         The calls to ast_str_tmp create an ast_str of the specified initial
+         length which can be referenced as STR_TMP.  It then calls the
+         expression, which must return a char *, ast_strdupa's it, frees
+         STR_TMP, then returns the ast_strdupa'd string.  That string is
+         freed when the function returns.
+
+         Change-Id: I44059b20d55a889aa91440d2f8a590865998be51
+         (cherry picked from commit 43ba72dea099b5448fdeb0fcab44b6186a0ddf75)
+
+2020-05-14 13:24 +0000 [360efdd94f]  George Joseph <gjoseph@digium.com>
+
+       * Scope Tracing:  A new facility for tracing scope enter/exit
+
+         What's wrong with ast_debug?
+
+           ast_debug is fine for general purpose debug output but it's not
+           really geared for scope tracing since it doesn't present its
+           output in a way that makes capturing and analyzing flow through
+           Asterisk easy.
+
+         How is scope tracing better?
+
+           Scope tracing uses the same "cleanup" attribute that RAII_VAR
+           uses to print messages to a separate "trace" log level.  Even
+           better, the messages are indented and unindented based on a
+           thread-local call depth counter.  When output to a separate log
+           file, the output is uncluttered and easy to follow.
+
+           Here's an example of the output. The leading timestamps and
+           thread ids are removed and the output cut off at 68 columns for
+           commit message restrictions but you get the idea.
+
+         --> res_pjsip_session.c:3680 handle_incoming PJSIP/1173-00000001
+               --> res_pjsip_session.c:3661 handle_incoming_response PJSIP/1173
+                       --> res_pjsip_session.c:3669 handle_incoming_response PJSIP/
+                               --> chan_pjsip.c:3265 chan_pjsip_incoming_response_after
+                                       --> chan_pjsip.c:3194 chan_pjsip_incoming_response P
+                                                   chan_pjsip.c:3245 chan_pjsip_incoming_respon
+                                       <-- chan_pjsip.c:3194 chan_pjsip_incoming_response P
+                               <-- chan_pjsip.c:3265 chan_pjsip_incoming_response_after
+                       <-- res_pjsip_session.c:3669 handle_incoming_response PJSIP/
+               <-- res_pjsip_session.c:3661 handle_incoming_response PJSIP/1173
+         <-- res_pjsip_session.c:3680 handle_incoming PJSIP/1173-00000001
+
+           The messages with the "-->" or "<--" were produced by including
+           the following at the top of each function:
+
+           SCOPE_TRACE(1, "%s\n", ast_sip_session_get_name(session));
+
+           Scope isn't limited to functions any more than RAII_VAR is.  You
+           can also see entry and exit from "if", "for", "while", etc blocks.
+
+           There is also an ast_trace() macro that doesn't track entry or
+           exit but simply outputs a message to the trace log using the
+           current indent level.  The deepest message in the sample
+           (chan_pjsip.c:3245) was used to indicate which "case" in a
+           "select" was executed.
+
+         How do you use it?
+
+           More documentation is available in logger.h but here's an overview:
+
+           * Configure with --enable-dev-mode.  Like debug, scope tracing
+             is #ifdef'd out if devmode isn't enabled.
+
+           * Add a SCOPE_TRACE() call to the top of your function.
+
+           * Set a logger channel in logger.conf to output the "trace" level.
+
+           * Use the CLI (or cli.conf) to set a trace level similar to setting
+             debug level... CLI> core set trace 2 res_pjsip.so
+
+         Summary Of Changes:
+
+           * Added LOG_TRACE logger level.  Actually it occupies the slot
+             formerly occupied by the now defunct "event" level.
+
+           * Added core asterisk option "trace" similar to debug.  Includes
+               ability to specify global trace level in asterisk.conf and CLI
+               commands to turn on/off and set levels.  Levels can be set
+               globally (probably not a good idea), or by module/source file.
+
+           * Updated sample asterisk.conf and logger.conf.  Tracing is
+             disabled by default in both.
+
+           * Added __ast_trace() to logger.c which keeps track of the indent
+             level using TLS. It's #ifdef'd out if devmode isn't enabled.
+
+           * Added ast_trace() and SCOPE_TRACE() macros to logger.h.
+             These are all #ifdef'd out if devmode isn't enabled.
+
+         Why not use gcc's -finstrument-functions capability?
+
+           gcc's facility doesn't allow access to local data and doesn't
+           operate on non-function scopes.
+
+         Known Issues:
+
+           The only know issue is that we currently don't know the line
+           number where the scope exited.  It's reported as the same place
+           the scope was entered.  There's probably a way to get around it
+           but it might involve looking at the stack and doing an 'addr2line'
+           to get the line number.  Kind of like ast_backtrace() does.
+           Not sure if it's worth it.
+
+         Change-Id: Ic5ebb859883f9c10a08c5630802de33500cad027
+         (cherry picked from commit 6a0c47237480d750023561b004f2c4052bfab210)
+
+2020-07-06 10:57 +0000 [944d691319]  George Joseph <gjoseph@digium.com>
+
+       * frame.c:  Make debugging easier
+
+          * ast_frame_subclass2str() and ast_frame_type2str() now return
+            a pointer to the buffer that was passed in instead of void.
+            This makes it easier to use these functions inline in
+            printf-style debugging statements.
+
+          * Added many missing control frame entries in
+            ast_frame_subclass2str.
+
+         Change-Id: Ifd0d6578e758cd644c96d17a5383ff2128c572fc
+         (cherry picked from commit fdcb3e2ead11243cd8becb2a9778a4fb4ac8b63c)
+
 2020-07-23 18:57 +0000  Asterisk Development Team <asteriskteam@digium.com>
 
        * asterisk certified/16.8-cert4-rc2 Released.
diff --git a/asterisk-certified-16.8-cert4-rc2-summary.html b/asterisk-certified-16.8-cert4-rc2-summary.html
deleted file mode 100644 (file)
index 9f6e19c..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><title>Release Summary - asterisk-certified/16.8-cert4-rc2</title><h1 align="center"><a name="top">Release Summary</a></h1><h3 align="center">asterisk-certified/16.8-cert4-rc2</h3><h3 align="center">Date: 2020-07-23</h3><h3 align="center">&lt;asteriskteam@digium.com&gt;</h3><hr><h2 align="center">Table of Contents</h2><ol>
-<li><a href="#summary">Summary</a></li>
-<li><a href="#contributors">Contributors</a></li>
-<li><a href="#closed_issues">Closed Issues</a></li>
-<li><a href="#commits">Other Changes</a></li>
-<li><a href="#diffstat">Diffstat</a></li>
-</ol><hr><a name="summary"><h2 align="center">Summary</h2></a><center><a href="#top">[Back to Top]</a></center><p>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.</p><p>The data in this summary reflects changes that have been made since the previous release, asterisk-certified/16.8-cert4-rc1.</p><hr><a name="contributors"><h2 align="center">Contributors</h2></a><center><a href="#top">[Back to Top]</a></center><p>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.</p><table width="100%" border="0">
-<tr><th width="33%">Coders</th><th width="33%">Testers</th><th width="33%">Reporters</th></tr>
-<tr valign="top"><td width="33%">2 Joshua C. Colp <jcolp@sangoma.com><br/></td><td width="33%"><td width="33%">1 Joshua C. Colp <jcolp@digium.com><br/></td></tr>
-</table><hr><a name="closed_issues"><h2 align="center">Closed Issues</h2></a><center><a href="#top">[Back to Top]</a></center><p>This is a list of all issues from the issue tracker that were closed by changes that went into this release.</p><h3>Bug</h3><h4>Category: Resources/res_pjsip</h4><a href="https://issues.asterisk.org/jira/browse/ASTERISK-28965">ASTERISK-28965</a>: res_pjsip: Apply outbound proxy to static contacts on AOR<br/>Reported by: Joshua C. Colp<ul>
-<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=5eec77b452e271c54a966797e88ac892e109cef0">[5eec77b452]</a> Joshua C. Colp -- res_pjsip: Apply AOR outbound proxy to static contacts.</li>
-</ul><br><hr><a name="commits"><h2 align="center">Commits Not Associated with an Issue</h2></a><center><a href="#top">[Back to Top]</a></center><p>This is a list of all changes that went into this release that did not reference a JIRA issue.</p><table width="100%" border="1">
-<tr><th>Revision</th><th>Author</th><th>Summary</th></tr>
-<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=bd86f382ed56e54b82401aaf5002b0753bf2e960">bd86f382ed</a></td><td>Joshua C. Colp</td><td>websocket / pjsip: Increase maximum packet size.</td></tr>
-</table><hr><a name="diffstat"><h2 align="center">Diffstat Results</h2></a><center><a href="#top">[Back to Top]</a></center><p>This is a summary of the changes to the source code that went into this release that was generated using the diffstat utility.</p><pre>res/res_http_websocket.c |   32 ++++++++++++++++----------------
-res/res_pjsip/location.c |   25 ++++++++++++++++++++++++-
-res/res_pjsip_pubsub.c   |   16 ++++------------
-3 files changed, 44 insertions(+), 29 deletions(-)</pre><br></html>
\ No newline at end of file
diff --git a/asterisk-certified-16.8-cert4-rc2-summary.txt b/asterisk-certified-16.8-cert4-rc2-summary.txt
deleted file mode 100644 (file)
index 7a08e0f..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-                                Release Summary
-
-                       asterisk-certified/16.8-cert4-rc2
-
-                                Date: 2020-07-23
-
-                           <asteriskteam@digium.com>
-
-     ----------------------------------------------------------------------
-
-                               Table of Contents
-
-    1. Summary
-    2. Contributors
-    3. Closed Issues
-    4. Other Changes
-    5. 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-certified/16.8-cert4-rc1.
-
-     ----------------------------------------------------------------------
-
-                                  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                
-   2 Joshua C. Colp                                  1 Joshua C. Colp         
-
-     ----------------------------------------------------------------------
-
-                                 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.
-
-  Bug
-
-    Category: Resources/res_pjsip
-
-   ASTERISK-28965: res_pjsip: Apply outbound proxy to static contacts on AOR
-   Reported by: Joshua C. Colp
-     * [5eec77b452] Joshua C. Colp -- res_pjsip: Apply AOR outbound proxy to
-       static contacts.
-
-     ----------------------------------------------------------------------
-
-                      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                                  |
-   |------------+----------------+------------------------------------------|
-   | bd86f382ed | Joshua C. Colp | websocket / pjsip: Increase maximum      |
-   |            |                | packet size.                             |
-   +------------------------------------------------------------------------+
-
-     ----------------------------------------------------------------------
-
-                                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.
-
- res/res_http_websocket.c |   32 ++++++++++++++++----------------
- res/res_pjsip/location.c |   25 ++++++++++++++++++++++++-
- res/res_pjsip_pubsub.c   |   16 ++++------------
- 3 files changed, 44 insertions(+), 29 deletions(-)
diff --git a/asterisk-certified-16.8-cert4-rc3-summary.html b/asterisk-certified-16.8-cert4-rc3-summary.html
new file mode 100644 (file)
index 0000000..db1bf28
--- /dev/null
@@ -0,0 +1,74 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><title>Release Summary - asterisk-certified/16.8-cert4-rc3</title><h1 align="center"><a name="top">Release Summary</a></h1><h3 align="center">asterisk-certified/16.8-cert4-rc3</h3><h3 align="center">Date: 2020-10-06</h3><h3 align="center">&lt;asteriskteam@digium.com&gt;</h3><hr><h2 align="center">Table of Contents</h2><ol>
+<li><a href="#summary">Summary</a></li>
+<li><a href="#contributors">Contributors</a></li>
+<li><a href="#closed_issues">Closed Issues</a></li>
+<li><a href="#commits">Other Changes</a></li>
+<li><a href="#diffstat">Diffstat</a></li>
+</ol><hr><a name="summary"><h2 align="center">Summary</h2></a><center><a href="#top">[Back to Top]</a></center><p>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.</p><p>The data in this summary reflects changes that have been made since the previous release, asterisk-certified/16.8-cert4-rc2.</p><hr><a name="contributors"><h2 align="center">Contributors</h2></a><center><a href="#top">[Back to Top]</a></center><p>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.</p><table width="100%" border="0">
+<tr><th width="33%">Coders</th><th width="33%">Testers</th><th width="33%">Reporters</th></tr>
+<tr valign="top"><td width="33%">15 George Joseph <gjoseph@digium.com><br/>4 Joshua C. Colp <jcolp@sangoma.com><br/>1 cmaj <chris@penguinpbx.com><br/>1 Kevin Harwell <kharwell@digium.com><br/>1 Ben Ford <bford@digium.com><br/></td><td width="33%"><td width="33%">2 George Joseph <gjoseph@digium.com><br/>1 Ross Beer <ross.beer@voicehost.co.uk><br/>1 cmaj <chris@penguinpbx.com><br/>1 Kevin Harwell <kharwell@digium.com><br/>1 Joshua C. Colp <jcolp@digium.com><br/></td></tr>
+</table><hr><a name="closed_issues"><h2 align="center">Closed Issues</h2></a><center><a href="#top">[Back to Top]</a></center><p>This is a list of all issues from the issue tracker that were closed by changes that went into this release.</p><h3>Bug</h3><h4>Category: Functions/func_version</h4><a href="https://issues.asterisk.org/jira/browse/ASTERISK-29021">ASTERISK-29021</a>: [patch] Fix VERSION(ASTERISK_VERSION_NUM) on certified versions<br/>Reported by: cmaj<ul>
+<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=4e9e5031329b5f47667480c53d210e4469a16c44">[4e9e503132]</a> cmaj -- Makefile: Fix certified version numbers</li>
+</ul><br><h4>Category: Resources/res_pjsip_session</h4><a href="https://issues.asterisk.org/jira/browse/ASTERISK-29014">ASTERISK-29014</a>: res_pjsip_session: Re-INVITE collisions aren't handled correctly<br/>Reported by: George Joseph<ul>
+<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=1620e94af5795408395ce216368acbbc1a43b71e">[1620e94af5]</a> George Joseph -- res_pjsip_session: Fix issue with COLP and 491</li>
+<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=9e54db24b6b8d92189f92e879536224c859fab54">[9e54db24b6]</a> George Joseph -- res_pjsip_session:  Handle multi-stream re-invites better</li>
+</ul><a href="https://issues.asterisk.org/jira/browse/ASTERISK-29033">ASTERISK-29033</a>: res_pjsip_session: Aggressively terminates session on failed re-INVITE<br/>Reported by: Joshua C. Colp<ul>
+<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=7b1ace90402695ead0bfc5284686d49e8761562d">[7b1ace9040]</a> Joshua C. Colp -- res_pjsip_session: Don't aggressively terminate on failed re-INVITE.</li>
+</ul><br><h4>Category: Resources/res_rtp_asterisk</h4><a href="https://issues.asterisk.org/jira/browse/ASTERISK-29089">ASTERISK-29089</a>: RTP Ports not cleared after hangup<br/>Reported by: Ross Beer<ul>
+<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=3e54af3afbd04d70170ec3c4347da1f592db2992">[3e54af3afb]</a> Joshua C. Colp -- res_pjsip_session: Fix session reference leak.</li>
+</ul><br><h3>Improvement</h3><h4>Category: Core/ManagerInterface</h4><a href="https://issues.asterisk.org/jira/browse/ASTERISK-28945">ASTERISK-28945</a>: AMI SendText - add Content-Type parameter<br/>Reported by: Kevin Harwell<ul>
+<li><a href="https://code.asterisk.org/code/changelog/asterisk?cs=5e58fc3939ce739a4f64fde34d7f6548bf6fa890">[5e58fc3939]</a> Kevin Harwell -- manager - Add Content-Type parameter to the SendText action</li>
+</ul><br><hr><a name="commits"><h2 align="center">Commits Not Associated with an Issue</h2></a><center><a href="#top">[Back to Top]</a></center><p>This is a list of all changes that went into this release that did not reference a JIRA issue.</p><table width="100%" border="1">
+<tr><th>Revision</th><th>Author</th><th>Summary</th></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=d5df3b95c8c32c40e997bd455f0fbee3dd2719ee">d5df3b95c8</a></td><td>Joshua C. Colp</td><td>res_pjsip_session: Fix stream name memory leak.</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=f74ecc44982e6893a55056ee8cb61d52668bcd94">f74ecc4498</a></td><td>George Joseph</td><td>logger.h: Fix ast_trace to respect scope_level</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=251c9a18912f8b96e7ba7aa699f5267ddcf3140e">251c9a1891</a></td><td>George Joseph</td><td>bridge_softmix/sfu_topologies_on_join: Ignore topology change failures</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=f67c58aa13ae0cbe6af838726f646534bd8e5c9b">f67c58aa13</a></td><td>George Joseph</td><td>debugging:  Add enough to choke a mule</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=c2701d80690931cb0a1c49902173046150368183">c2701d8069</a></td><td>Ben Ford</td><td>Bridging: Use a ref to bridge_channel's channel to prevent crash.</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=fb78adce210bae296099a8e8a5df1f3918a39f54">fb78adce21</a></td><td>George Joseph</td><td>stream.c:  Added 2 more debugging utils and added pos to stream string</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=d942fe4837ad21f9d5ddd249343b70eb80559a7c">d942fe4837</a></td><td>George Joseph</td><td>scope_trace: Added debug messages and added additional macros</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=0430e1b3c3c5d58aa5a5f932b848a9d89198e958">0430e1b3c3</a></td><td>George Joseph</td><td>logger.c: Added a new log formatter called "plain"</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=950784a4460b4f6fc07e2ffa8b1c6a201b480567">950784a446</a></td><td>George Joseph</td><td>ast_coredumper: Fix issues with naming</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=d189bf9ae593a3015e8801ffa80c54734c8162cf">d189bf9ae5</a></td><td>George Joseph</td><td>res_pjsip_session: Ensure reused streams have correct bundle group</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=b8bb63c82f3acc19e8eee6f5938772f3fb5620c6">b8bb63c82f</a></td><td>Joshua C. Colp</td><td>pjsip: Add timer refactor patch and timer 0 cancellation.</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=8ebe4c772e41ccc6ae43ce4d22d09339bd2329fb">8ebe4c772e</a></td><td>George Joseph</td><td>Scope Trace: Make it easier to trace through synchronous tasks</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=8076ed59f0c8ae5c0f5ed2abdd6c309cfcd61540">8076ed59f0</a></td><td>George Joseph</td><td>scope_trace: Add/update utilities</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=9d3b01e87442f7c88f14cd812d67b4918e5abeb3">9d3b01e874</a></td><td>George Joseph</td><td>Scope Trace:  Add some new tracing macros and an ast_str helper</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=360efdd94f7312970d1dde97b7e7fb3c8f58a6aa">360efdd94f</a></td><td>George Joseph</td><td>Scope Tracing:  A new facility for tracing scope enter/exit</td></tr>
+<tr><td><a href="https://code.asterisk.org/code/changelog/asterisk?cs=944d6913190cf79b74cf35927f5c7d05a0173635">944d691319</a></td><td>George Joseph</td><td>frame.c:  Make debugging easier</td></tr>
+</table><hr><a name="diffstat"><h2 align="center">Diffstat Results</h2></a><center><a href="#top">[Back to Top]</a></center><p>This is a summary of the changes to the source code that went into this release that was generated using the diffstat utility.</p><pre>Makefile                                                      |    2
+bridges/bridge_softmix.c                                      |  143
+channels/chan_pjsip.c                                         |   74
+configs/samples/asterisk.conf.sample                          |    1
+configs/samples/logger.conf.sample                            |   15
+contrib/scripts/ast_coredumper                                |    4
+doc/CHANGES-staging/ami_sendtext_content_type.txt             |    4
+doc/CHANGES-staging/logger_format.txt                         |   12
+include/asterisk/bridge_channel.h                             |   14
+include/asterisk/format_cap.h                                 |   11
+include/asterisk/frame.h                                      |   13
+include/asterisk/logger.h                                     |  426 ++
+include/asterisk/manager.h                                    |    2
+include/asterisk/message.h                                    |   18
+include/asterisk/options.h                                    |    4
+include/asterisk/res_pjsip_session.h                          |   12
+include/asterisk/stream.h                                     |  117
+include/asterisk/strings.h                                    |   53
+main/asterisk.c                                               |    1
+main/asterisk.exports.in                                      |    1
+main/bridge.c                                                 |   21
+main/bridge_channel.c                                         |   20
+main/channel.c                                                |   13
+main/cli.c                                                    |  261 +
+main/format_cap.c                                             |   22
+main/frame.c                                                  |   87
+main/logger.c                                                 |  150
+main/manager.c                                                |  115
+main/message.c                                                |   26
+main/options.c                                                |    9
+main/stream.c                                                 |  109
+res/res_pjsip_session.c                                       | 1809 ++++++++--
+tests/test_scope_trace.c                                      |  126
+tests/test_strings.c                                          |   39
+third-party/pjproject/patches/0040-pjsip-timer-refactor.patch | 1148 ++++++
+35 files changed, 4430 insertions(+), 452 deletions(-)</pre><br></html>
\ No newline at end of file
diff --git a/asterisk-certified-16.8-cert4-rc3-summary.txt b/asterisk-certified-16.8-cert4-rc3-summary.txt
new file mode 100644 (file)
index 0000000..fe76eec
--- /dev/null
@@ -0,0 +1,213 @@
+                                Release Summary
+
+                       asterisk-certified/16.8-cert4-rc3
+
+                                Date: 2020-10-06
+
+                           <asteriskteam@digium.com>
+
+     ----------------------------------------------------------------------
+
+                               Table of Contents
+
+    1. Summary
+    2. Contributors
+    3. Closed Issues
+    4. Other Changes
+    5. 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-certified/16.8-cert4-rc2.
+
+     ----------------------------------------------------------------------
+
+                                  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                
+   15 George Joseph                                  2 George Joseph          
+   4 Joshua C. Colp                                  1 Ross Beer              
+   1 cmaj                                            1 cmaj                   
+   1 Kevin Harwell                                   1 Kevin Harwell          
+   1 Ben Ford                                        1 Joshua C. Colp         
+
+     ----------------------------------------------------------------------
+
+                                 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.
+
+  Bug
+
+    Category: Functions/func_version
+
+   ASTERISK-29021: [patch] Fix VERSION(ASTERISK_VERSION_NUM) on certified
+   versions
+   Reported by: cmaj
+     * [4e9e503132] cmaj -- Makefile: Fix certified version numbers
+
+    Category: Resources/res_pjsip_session
+
+   ASTERISK-29014: res_pjsip_session: Re-INVITE collisions aren't handled
+   correctly
+   Reported by: George Joseph
+     * [1620e94af5] George Joseph -- res_pjsip_session: Fix issue with COLP
+       and 491
+     * [9e54db24b6] George Joseph -- res_pjsip_session: Handle multi-stream
+       re-invites better
+   ASTERISK-29033: res_pjsip_session: Aggressively terminates session on
+   failed re-INVITE
+   Reported by: Joshua C. Colp
+     * [7b1ace9040] Joshua C. Colp -- res_pjsip_session: Don't aggressively
+       terminate on failed re-INVITE.
+
+    Category: Resources/res_rtp_asterisk
+
+   ASTERISK-29089: RTP Ports not cleared after hangup
+   Reported by: Ross Beer
+     * [3e54af3afb] Joshua C. Colp -- res_pjsip_session: Fix session
+       reference leak.
+
+  Improvement
+
+    Category: Core/ManagerInterface
+
+   ASTERISK-28945: AMI SendText - add Content-Type parameter
+   Reported by: Kevin Harwell
+     * [5e58fc3939] Kevin Harwell -- manager - Add Content-Type parameter to
+       the SendText action
+
+     ----------------------------------------------------------------------
+
+                      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                                       |
+   |------------+-----------+-----------------------------------------------|
+   | d5df3b95c8 | Joshua C. | res_pjsip_session: Fix stream name memory     |
+   |            | Colp      | leak.                                         |
+   |------------+-----------+-----------------------------------------------|
+   | f74ecc4498 | George    | logger.h: Fix ast_trace to respect            |
+   |            | Joseph    | scope_level                                   |
+   |------------+-----------+-----------------------------------------------|
+   | 251c9a1891 | George    | bridge_softmix/sfu_topologies_on_join: Ignore |
+   |            | Joseph    | topology change failures                      |
+   |------------+-----------+-----------------------------------------------|
+   | f67c58aa13 | George    | debugging: Add enough to choke a mule         |
+   |            | Joseph    |                                               |
+   |------------+-----------+-----------------------------------------------|
+   | c2701d8069 | Ben Ford  | Bridging: Use a ref to bridge_channel's       |
+   |            |           | channel to prevent crash.                     |
+   |------------+-----------+-----------------------------------------------|
+   | fb78adce21 | George    | stream.c: Added 2 more debugging utils and    |
+   |            | Joseph    | added pos to stream string                    |
+   |------------+-----------+-----------------------------------------------|
+   | d942fe4837 | George    | scope_trace: Added debug messages and added   |
+   |            | Joseph    | additional macros                             |
+   |------------+-----------+-----------------------------------------------|
+   | 0430e1b3c3 | George    | logger.c: Added a new log formatter called    |
+   |            | Joseph    | "plain"                                       |
+   |------------+-----------+-----------------------------------------------|
+   | 950784a446 | George    | ast_coredumper: Fix issues with naming        |
+   |            | Joseph    |                                               |
+   |------------+-----------+-----------------------------------------------|
+   | d189bf9ae5 | George    | res_pjsip_session: Ensure reused streams have |
+   |            | Joseph    | correct bundle group                          |
+   |------------+-----------+-----------------------------------------------|
+   | b8bb63c82f | Joshua C. | pjsip: Add timer refactor patch and timer 0   |
+   |            | Colp      | cancellation.                                 |
+   |------------+-----------+-----------------------------------------------|
+   | 8ebe4c772e | George    | Scope Trace: Make it easier to trace through  |
+   |            | Joseph    | synchronous tasks                             |
+   |------------+-----------+-----------------------------------------------|
+   | 8076ed59f0 | George    | scope_trace: Add/update utilities             |
+   |            | Joseph    |                                               |
+   |------------+-----------+-----------------------------------------------|
+   | 9d3b01e874 | George    | Scope Trace: Add some new tracing macros and  |
+   |            | Joseph    | an ast_str helper                             |
+   |------------+-----------+-----------------------------------------------|
+   | 360efdd94f | George    | Scope Tracing: A new facility for tracing     |
+   |            | Joseph    | scope enter/exit                              |
+   |------------+-----------+-----------------------------------------------|
+   | 944d691319 | George    | frame.c: Make debugging easier                |
+   |            | Joseph    |                                               |
+   +------------------------------------------------------------------------+
+
+     ----------------------------------------------------------------------
+
+                                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.
+
+ Makefile                                                      |    2
+ bridges/bridge_softmix.c                                      |  143
+ channels/chan_pjsip.c                                         |   74
+ configs/samples/asterisk.conf.sample                          |    1
+ configs/samples/logger.conf.sample                            |   15
+ contrib/scripts/ast_coredumper                                |    4
+ doc/CHANGES-staging/ami_sendtext_content_type.txt             |    4
+ doc/CHANGES-staging/logger_format.txt                         |   12
+ include/asterisk/bridge_channel.h                             |   14
+ include/asterisk/format_cap.h                                 |   11
+ include/asterisk/frame.h                                      |   13
+ include/asterisk/logger.h                                     |  426 ++
+ include/asterisk/manager.h                                    |    2
+ include/asterisk/message.h                                    |   18
+ include/asterisk/options.h                                    |    4
+ include/asterisk/res_pjsip_session.h                          |   12
+ include/asterisk/stream.h                                     |  117
+ include/asterisk/strings.h                                    |   53
+ main/asterisk.c                                               |    1
+ main/asterisk.exports.in                                      |    1
+ main/bridge.c                                                 |   21
+ main/bridge_channel.c                                         |   20
+ main/channel.c                                                |   13
+ main/cli.c                                                    |  261 +
+ main/format_cap.c                                             |   22
+ main/frame.c                                                  |   87
+ main/logger.c                                                 |  150
+ main/manager.c                                                |  115
+ main/message.c                                                |   26
+ main/options.c                                                |    9
+ main/stream.c                                                 |  109
+ res/res_pjsip_session.c                                       | 1809 ++++++++--
+ tests/test_scope_trace.c                                      |  126
+ tests/test_strings.c                                          |   39
+ third-party/pjproject/patches/0040-pjsip-timer-refactor.patch | 1148 ++++++
+ 35 files changed, 4430 insertions(+), 452 deletions(-)