From 6249324f40bff8d4ec3b529bb7ceb87974659679 Mon Sep 17 00:00:00 2001
From: Asterisk Development Team
Date: Thu, 25 Sep 2025 13:49:56 +0000
Subject: [PATCH] Update for 23.0.0-rc2
---
.version | 2 +-
CHANGES.html | 2 +-
CHANGES.md | 2 +-
ChangeLogs/ChangeLog-23.0.0-rc2.html | 81 ++++++++++++++++++++++++
ChangeLogs/ChangeLog-23.0.0-rc2.md | 95 ++++++++++++++++++++++++++++
README.html | 4 +-
README.md | 2 +-
7 files changed, 182 insertions(+), 6 deletions(-)
create mode 100644 ChangeLogs/ChangeLog-23.0.0-rc2.html
create mode 100644 ChangeLogs/ChangeLog-23.0.0-rc2.md
diff --git a/.version b/.version
index b7c73efac8..e4997573a2 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-23.0.0-rc1
+23.0.0-rc2
diff --git a/CHANGES.html b/CHANGES.html
index 10a9546dc2..efb47bec74 120000
--- a/CHANGES.html
+++ b/CHANGES.html
@@ -1 +1 @@
-ChangeLogs/ChangeLog-23.0.0-rc1.html
\ No newline at end of file
+ChangeLogs/ChangeLog-23.0.0-rc2.html
\ No newline at end of file
diff --git a/CHANGES.md b/CHANGES.md
index 9526b33867..75cb9dac21 120000
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1 +1 @@
-ChangeLogs/ChangeLog-23.0.0-rc1.md
\ No newline at end of file
+ChangeLogs/ChangeLog-23.0.0-rc2.md
\ No newline at end of file
diff --git a/ChangeLogs/ChangeLog-23.0.0-rc2.html b/ChangeLogs/ChangeLog-23.0.0-rc2.html
new file mode 100644
index 0000000000..d9b143ed40
--- /dev/null
+++ b/ChangeLogs/ChangeLog-23.0.0-rc2.html
@@ -0,0 +1,81 @@
+ChangeLog for asterisk-23.0.0-rc2
+Change Log for Release asterisk-23.0.0-rc2
+Links:
+
+Summary:
+
+- Commits: 3
+- Commit Authors: 1
+- Issues Resolved: 3
+- Security Advisories Resolved: 0
+
+User Notes:
+Upgrade Notes:
+Developer Notes:
+Commit Authors:
+
+Issue and Commit Detail:
+Closed Issues:
+
+- 1457: [bug]: segmentation fault because of a wrong ari config
+- 1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.
+- 1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes
+
+Commits By Author:
+
+-
+
George Joseph (3):
+
+- res_ari: Ensure outbound websocket config has a websocket_client_id.
+- chan_websocket: Fix codec validation and add passthrough option.
+- res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+
+Commit List:
+
+- res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+- chan_websocket: Fix codec validation and add passthrough option.
+- res_ari: Ensure outbound websocket config has a websocket_client_id.
+
+Commit Details:
+res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+Author: George Joseph
+ Date: 2025-09-23
+In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
+ needs to use the rtp->dtls structure instead of rtp->rtcp->dtls when
+ AST_RTP_INSTANCE_RTCP_MUX is set.
+Resolves: #1474
+chan_websocket: Fix codec validation and add passthrough option.
+Author: George Joseph
+ Date: 2025-09-17
+
+- Fixed an issue in webchan_write() where we weren't detecting equivalent
+ codecs properly.
+- Added the "p" dialstring option that puts the channel driver in
+ "passthrough" mode where it will not attempt to re-frame or re-time
+ media coming in over the websocket from the remote app. This can be used
+ for any codec but MUST be used for codecs that use packet headers or whose
+ data stream can't be broken up on arbitrary byte boundaries. In this case,
+ the remote app is fully responsible for correctly framing and timing media
+ sent to Asterisk and the MEDIA text commands that could be sent over the
+ websocket are disabled. Currently, passthrough mode is automatically set
+ for the opus, speex and g729 codecs.
+- Now calling ast_set_read_format() after ast_channel_set_rawreadformat() to
+ ensure proper translation paths are set up when switching between native
+ frames and slin silence frames. This fixes an issue with codec errors
+ when transcode_via_sln=yes.
+
+Resolves: #1462
+res_ari: Ensure outbound websocket config has a websocket_client_id.
+Author: George Joseph
+ Date: 2025-09-12
+Added a check to outbound_websocket_apply() that makes sure an outbound
+ websocket config object in ari.conf has a websocket_client_id parameter.
+Resolves: #1457
+
diff --git a/ChangeLogs/ChangeLog-23.0.0-rc2.md b/ChangeLogs/ChangeLog-23.0.0-rc2.md
new file mode 100644
index 0000000000..1feb3732f9
--- /dev/null
+++ b/ChangeLogs/ChangeLog-23.0.0-rc2.md
@@ -0,0 +1,95 @@
+
+## Change Log for Release asterisk-23.0.0-rc2
+
+### Links:
+
+ - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-23.0.0-rc2.html)
+ - [GitHub Diff](https://github.com/asterisk/asterisk/compare/23.0.0-rc1...23.0.0-rc2)
+ - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-23.0.0-rc2.tar.gz)
+ - [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk)
+
+### Summary:
+
+- Commits: 3
+- Commit Authors: 1
+- Issues Resolved: 3
+- Security Advisories Resolved: 0
+
+### User Notes:
+
+
+### Upgrade Notes:
+
+
+### Developer Notes:
+
+
+### Commit Authors:
+
+- George Joseph: (3)
+
+## Issue and Commit Detail:
+
+### Closed Issues:
+
+ - 1457: [bug]: segmentation fault because of a wrong ari config
+ - 1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.
+ - 1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes
+
+### Commits By Author:
+
+- #### George Joseph (3):
+ - res_ari: Ensure outbound websocket config has a websocket_client_id.
+ - chan_websocket: Fix codec validation and add passthrough option.
+ - res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+
+
+### Commit List:
+
+- res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+- chan_websocket: Fix codec validation and add passthrough option.
+- res_ari: Ensure outbound websocket config has a websocket_client_id.
+
+### Commit Details:
+
+#### res_rtp_asterisk.c: Use rtp->dtls in __rtp_sendto when rtcp mux is used.
+ Author: George Joseph
+ Date: 2025-09-23
+
+ In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
+ needs to use the rtp->dtls structure instead of rtp->rtcp->dtls when
+ AST_RTP_INSTANCE_RTCP_MUX is set.
+
+ Resolves: #1474
+
+#### chan_websocket: Fix codec validation and add passthrough option.
+ Author: George Joseph
+ Date: 2025-09-17
+
+ * Fixed an issue in webchan_write() where we weren't detecting equivalent
+ codecs properly.
+ * Added the "p" dialstring option that puts the channel driver in
+ "passthrough" mode where it will not attempt to re-frame or re-time
+ media coming in over the websocket from the remote app. This can be used
+ for any codec but MUST be used for codecs that use packet headers or whose
+ data stream can't be broken up on arbitrary byte boundaries. In this case,
+ the remote app is fully responsible for correctly framing and timing media
+ sent to Asterisk and the MEDIA text commands that could be sent over the
+ websocket are disabled. Currently, passthrough mode is automatically set
+ for the opus, speex and g729 codecs.
+ * Now calling ast_set_read_format() after ast_channel_set_rawreadformat() to
+ ensure proper translation paths are set up when switching between native
+ frames and slin silence frames. This fixes an issue with codec errors
+ when transcode_via_sln=yes.
+
+ Resolves: #1462
+
+#### res_ari: Ensure outbound websocket config has a websocket_client_id.
+ Author: George Joseph
+ Date: 2025-09-12
+
+ Added a check to outbound_websocket_apply() that makes sure an outbound
+ websocket config object in ari.conf has a websocket_client_id parameter.
+
+ Resolves: #1457
+
diff --git a/README.html b/README.html
index 48dbe2cb60..35bf6fe948 100644
--- a/README.html
+++ b/README.html
@@ -1,4 +1,4 @@
-Readme for asterisk-23.0.0-rc1
+Readme for asterisk-23.0.0-rc2
The Asterisk(R) Open Source PBX
By Mark Spencer <markster@digium.com> and the Asterisk.org developer community.
Copyright (C) 2001-2025 Sangoma Technologies Corporation and other copyright holders.
@@ -37,7 +37,7 @@ hardware.
If you are updating from a previous version of Asterisk, make sure you
read the Change Logs.
-Change Logs
+Change Logs
NEW INSTALLATIONS
diff --git a/README.md b/README.md
index eefe89c9d8..92421abf1b 100644
--- a/README.md
+++ b/README.md
@@ -55,7 +55,7 @@ If you are updating from a previous version of Asterisk, make sure you
read the Change Logs.
-[Change Logs](ChangeLogs/ChangeLog-23.0.0-rc1.html)
+[Change Logs](ChangeLogs/ChangeLog-23.0.0-rc2.html)
### NEW INSTALLATIONS