Compare commits

...

1 Commits

Author SHA1 Message Date
Asterisk Development Team
3bb594c9ca Update for 23.0.0 2025-10-15 17:01:28 +00:00
9 changed files with 158 additions and 202 deletions

View File

@@ -1 +1 @@
23.0.0-rc2 23.0.0

View File

@@ -1 +1 @@
ChangeLogs/ChangeLog-23.0.0-rc2.html ChangeLogs/ChangeLog-23.0.0.html

View File

@@ -1 +1 @@
ChangeLogs/ChangeLog-23.0.0-rc2.md ChangeLogs/ChangeLog-23.0.0.md

View File

@@ -1,81 +0,0 @@
<html><head><title>ChangeLog for asterisk-23.0.0-rc2</title></head><body>
<h2>Change Log for Release asterisk-23.0.0-rc2</h2>
<h3>Links:</h3>
<ul>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-23.0.0-rc2.html">Full ChangeLog</a> </li>
<li><a href="https://github.com/asterisk/asterisk/compare/23.0.0-rc1...23.0.0-rc2">GitHub Diff</a> </li>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-23.0.0-rc2.tar.gz">Tarball</a> </li>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk">Downloads</a> </li>
</ul>
<h3>Summary:</h3>
<ul>
<li>Commits: 3</li>
<li>Commit Authors: 1</li>
<li>Issues Resolved: 3</li>
<li>Security Advisories Resolved: 0</li>
</ul>
<h3>User Notes:</h3>
<h3>Upgrade Notes:</h3>
<h3>Developer Notes:</h3>
<h3>Commit Authors:</h3>
<ul>
<li>George Joseph: (3)</li>
</ul>
<h2>Issue and Commit Detail:</h2>
<h3>Closed Issues:</h3>
<ul>
<li>1457: [bug]: segmentation fault because of a wrong ari config</li>
<li>1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.</li>
<li>1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes</li>
</ul>
<h3>Commits By Author:</h3>
<ul>
<li>
<h4>George Joseph (3):</h4>
</li>
<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
<li>chan_websocket: Fix codec validation and add passthrough option.</li>
<li>res_rtp_asterisk.c: Use rtp-&gt;dtls in __rtp_sendto when rtcp mux is used.</li>
</ul>
<h3>Commit List:</h3>
<ul>
<li>res_rtp_asterisk.c: Use rtp-&gt;dtls in __rtp_sendto when rtcp mux is used.</li>
<li>chan_websocket: Fix codec validation and add passthrough option.</li>
<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
</ul>
<h3>Commit Details:</h3>
<h4>res_rtp_asterisk.c: Use rtp-&gt;dtls in __rtp_sendto when rtcp mux is used.</h4>
<p>Author: George Joseph
Date: 2025-09-23</p>
<p>In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
needs to use the rtp-&gt;dtls structure instead of rtp-&gt;rtcp-&gt;dtls when
AST_RTP_INSTANCE_RTCP_MUX is set.</p>
<p>Resolves: #1474</p>
<h4>chan_websocket: Fix codec validation and add passthrough option.</h4>
<p>Author: George Joseph
Date: 2025-09-17</p>
<ul>
<li>Fixed an issue in webchan_write() where we weren't detecting equivalent
codecs properly.</li>
<li>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.</li>
<li>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.</li>
</ul>
<p>Resolves: #1462</p>
<h4>res_ari: Ensure outbound websocket config has a websocket_client_id.</h4>
<p>Author: George Joseph
Date: 2025-09-12</p>
<p>Added a check to outbound_websocket_apply() that makes sure an outbound
websocket config object in ari.conf has a websocket_client_id parameter.</p>
<p>Resolves: #1457</p>
</body></html>

View File

@@ -1,95 +0,0 @@
## 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

View File

@@ -1,17 +1,17 @@
<html><head><title>ChangeLog for asterisk-23.0.0-rc1</title></head><body> <html><head><title>ChangeLog for asterisk-23.0.0</title></head><body>
<h2>Change Log for Release asterisk-23.0.0-rc1</h2> <h2>Change Log for Release asterisk-23.0.0</h2>
<h3>Links:</h3> <h3>Links:</h3>
<ul> <ul>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-23.0.0-rc1.html">Full ChangeLog</a> </li> <li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-23.0.0.html">Full ChangeLog</a> </li>
<li><a href="https://github.com/asterisk/asterisk/compare/23.0.0-pre1...23.0.0-rc1">GitHub Diff</a> </li> <li><a href="https://github.com/asterisk/asterisk/compare/23.0.0-pre1...23.0.0">GitHub Diff</a> </li>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-23.0.0-rc1.tar.gz">Tarball</a> </li> <li><a href="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-23.0.0.tar.gz">Tarball</a> </li>
<li><a href="https://downloads.asterisk.org/pub/telephony/asterisk">Downloads</a> </li> <li><a href="https://downloads.asterisk.org/pub/telephony/asterisk">Downloads</a> </li>
</ul> </ul>
<h3>Summary:</h3> <h3>Summary:</h3>
<ul> <ul>
<li>Commits: 41</li> <li>Commits: 45</li>
<li>Commit Authors: 13</li> <li>Commit Authors: 14</li>
<li>Issues Resolved: 32</li> <li>Issues Resolved: 36</li>
<li>Security Advisories Resolved: 1</li> <li>Security Advisories Resolved: 1</li>
<li><a href="https://github.com/asterisk/asterisk/security/advisories/GHSA-64qc-9x89-rx5j">GHSA-64qc-9x89-rx5j</a>: A specifically malformed Authorization header in an incoming SIP request can cause Asterisk to crash</li> <li><a href="https://github.com/asterisk/asterisk/security/advisories/GHSA-64qc-9x89-rx5j">GHSA-64qc-9x89-rx5j</a>: A specifically malformed Authorization header in an incoming SIP request can cause Asterisk to crash</li>
</ul> </ul>
@@ -130,9 +130,10 @@
<ul> <ul>
<li>Alexei Gradinari: (1)</li> <li>Alexei Gradinari: (1)</li>
<li>Alexey Khabulyak: (1)</li> <li>Alexey Khabulyak: (1)</li>
<li>Allan Nathanson: (1)</li>
<li>Artem Umerov: (1)</li> <li>Artem Umerov: (1)</li>
<li>Ben Ford: (2)</li> <li>Ben Ford: (2)</li>
<li>George Joseph: (4)</li> <li>George Joseph: (7)</li>
<li>Igor Goncharovsky: (2)</li> <li>Igor Goncharovsky: (2)</li>
<li>Joe Garlick: (1)</li> <li>Joe Garlick: (1)</li>
<li>Jose Lopes: (1)</li> <li>Jose Lopes: (1)</li>
@@ -177,6 +178,10 @@
<li>1394: [improvement]: sig_analog: Skip Caller ID spill if Caller ID is disabled</li> <li>1394: [improvement]: sig_analog: Skip Caller ID spill if Caller ID is disabled</li>
<li>1396: [new-feature]: pbx_builtins: Make tone option for WaitExten configurable</li> <li>1396: [new-feature]: pbx_builtins: Make tone option for WaitExten configurable</li>
<li>1401: [bug]: app_waitfornoise timeout is always less then configured because of time() usage</li> <li>1401: [bug]: app_waitfornoise timeout is always less then configured because of time() usage</li>
<li>1451: [bug]: ast_config_text_file_save2(): incorrect handling of deep/wide template inheritance</li>
<li>1457: [bug]: segmentation fault because of a wrong ari config</li>
<li>1462: [bug]: chan_websocket isn't handling the "opus" codec correctly.</li>
<li>1474: [bug]: Media doesn't flow for video conference after res_rtp_asterisk change to stop media flow before DTLS completes</li>
<li>ASTERISK-30370: config: Template inheritance is incorrect for ast_variable_retrieve</li> <li>ASTERISK-30370: config: Template inheritance is incorrect for ast_variable_retrieve</li>
</ul> </ul>
<h3>Commits By Author:</h3> <h3>Commits By Author:</h3>
@@ -206,13 +211,16 @@
<p>res_rtp_asterisk: Don't send RTP before DTLS has negotiated.</p> <p>res_rtp_asterisk: Don't send RTP before DTLS has negotiated.</p>
</li> </li>
<li> <li>
<h4>George Joseph (4):</h4> <h4>George Joseph (7):</h4>
</li> </li>
<li>xmldoc.c: Fix rendering of CLI output.</li> <li>xmldoc.c: Fix rendering of CLI output.</li>
<li>chan_websocket: Fix buffer overrun when processing TEXT websocket frames.</li> <li>chan_websocket: Fix buffer overrun when processing TEXT websocket frames.</li>
<li>chan_websocket: Allow additional URI parameters to be added to the outgoing URI.</li> <li>chan_websocket: Allow additional URI parameters to be added to the outgoing URI.</li>
<li>res_pjsip_authenticator_digest: Fix SEGV if get_authorization_hdr returns NULL.</li>
<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
<li>chan_websocket: Fix codec validation and add passthrough option.</li>
<li> <li>
<p>res_pjsip_authenticator_digest: Fix SEGV if get_authorization_hdr returns NULL.</p> <p>res_rtp_asterisk.c: Use rtp-&gt;dtls in __rtp_sendto when rtcp mux is used.</p>
</li> </li>
<li> <li>
<h4>Igor Goncharovsky (2):</h4> <h4>Igor Goncharovsky (2):</h4>
@@ -278,6 +286,10 @@
<li>logger.c: Remove deprecated/redundant configuration option.</li> <li>logger.c: Remove deprecated/redundant configuration option.</li>
<li>func_dialplan: Remove deprecated/redundant function.</li> <li>func_dialplan: Remove deprecated/redundant function.</li>
<li>Update version for Asterisk 23</li> <li>Update version for Asterisk 23</li>
<li>config.c: fix saving of deep/wide template configurations</li>
<li>res_rtp_asterisk.c: Use rtp-&gt;dtls in __rtp_sendto when rtcp mux is used.</li>
<li>chan_websocket: Fix codec validation and add passthrough option.</li>
<li>res_ari: Ensure outbound websocket config has a websocket_client_id.</li>
<li>chan_websocket.c: Add DTMF messages</li> <li>chan_websocket.c: Add DTMF messages</li>
<li>app_queue.c: Add new global 'log_unpause_on_reason_change'</li> <li>app_queue.c: Add new global 'log_unpause_on_reason_change'</li>
<li>app_waitforsilence.c: Use milliseconds to calculate timeout time</li> <li>app_waitforsilence.c: Use milliseconds to calculate timeout time</li>
@@ -465,6 +477,54 @@
<h4>Update version for Asterisk 23</h4> <h4>Update version for Asterisk 23</h4>
<p>Author: Ben Ford <p>Author: Ben Ford
Date: 2025-08-13</p> Date: 2025-08-13</p>
<h4>config.c: fix saving of deep/wide template configurations</h4>
<p>Author: Allan Nathanson
Date: 2025-09-10</p>
<p>Follow-on to #244 and #960 regarding how the ast_config_XXX APIs
handle template inheritance.</p>
<p>ast_config_text_file_save2() incorrectly suppressed variables if they
matched any ancestor template. This broke deep chains (dropping values
based on distant parents) and wide inheritance (ignoring last-wins order
across multiple parents).</p>
<p>The function now inspects the full template hierarchy to find the nearest
effective parent (last occurrence wins). Earlier inherited duplicates are
collapsed, explicit overrides are kept unless they exactly match the parent,
and PreserveEffectiveContext avoids writing redundant lines.</p>
<p>Resolves: #1451</p>
<h4>res_rtp_asterisk.c: Use rtp-&gt;dtls in __rtp_sendto when rtcp mux is used.</h4>
<p>Author: George Joseph
Date: 2025-09-23</p>
<p>In __rtp_sendto(), the check for DTLS negotiation completion for rtcp packets
needs to use the rtp-&gt;dtls structure instead of rtp-&gt;rtcp-&gt;dtls when
AST_RTP_INSTANCE_RTCP_MUX is set.</p>
<p>Resolves: #1474</p>
<h4>chan_websocket: Fix codec validation and add passthrough option.</h4>
<p>Author: George Joseph
Date: 2025-09-17</p>
<ul>
<li>Fixed an issue in webchan_write() where we weren't detecting equivalent
codecs properly.</li>
<li>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.</li>
<li>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.</li>
</ul>
<p>Resolves: #1462</p>
<h4>res_ari: Ensure outbound websocket config has a websocket_client_id.</h4>
<p>Author: George Joseph
Date: 2025-09-12</p>
<p>Added a check to outbound_websocket_apply() that makes sure an outbound
websocket config object in ari.conf has a websocket_client_id parameter.</p>
<p>Resolves: #1457</p>
<h4>chan_websocket.c: Add DTMF messages</h4> <h4>chan_websocket.c: Add DTMF messages</h4>
<p>Author: Joe Garlick <p>Author: Joe Garlick
Date: 2025-09-04</p> Date: 2025-09-04</p>

View File

@@ -1,18 +1,18 @@
## Change Log for Release asterisk-23.0.0-rc1 ## Change Log for Release asterisk-23.0.0
### Links: ### Links:
- [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-23.0.0-rc1.html) - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-23.0.0.html)
- [GitHub Diff](https://github.com/asterisk/asterisk/compare/23.0.0-pre1...23.0.0-rc1) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/23.0.0-pre1...23.0.0)
- [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-23.0.0-rc1.tar.gz) - [Tarball](https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-23.0.0.tar.gz)
- [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk) - [Downloads](https://downloads.asterisk.org/pub/telephony/asterisk)
### Summary: ### Summary:
- Commits: 41 - Commits: 45
- Commit Authors: 13 - Commit Authors: 14
- Issues Resolved: 32 - Issues Resolved: 36
- Security Advisories Resolved: 1 - Security Advisories Resolved: 1
- [GHSA-64qc-9x89-rx5j](https://github.com/asterisk/asterisk/security/advisories/GHSA-64qc-9x89-rx5j): A specifically malformed Authorization header in an incoming SIP request can cause Asterisk to crash - [GHSA-64qc-9x89-rx5j](https://github.com/asterisk/asterisk/security/advisories/GHSA-64qc-9x89-rx5j): A specifically malformed Authorization header in an incoming SIP request can cause Asterisk to crash
@@ -115,9 +115,10 @@
- Alexei Gradinari: (1) - Alexei Gradinari: (1)
- Alexey Khabulyak: (1) - Alexey Khabulyak: (1)
- Allan Nathanson: (1)
- Artem Umerov: (1) - Artem Umerov: (1)
- Ben Ford: (2) - Ben Ford: (2)
- George Joseph: (4) - George Joseph: (7)
- Igor Goncharovsky: (2) - Igor Goncharovsky: (2)
- Joe Garlick: (1) - Joe Garlick: (1)
- Jose Lopes: (1) - Jose Lopes: (1)
@@ -163,6 +164,10 @@
- 1394: [improvement]: sig_analog: Skip Caller ID spill if Caller ID is disabled - 1394: [improvement]: sig_analog: Skip Caller ID spill if Caller ID is disabled
- 1396: [new-feature]: pbx_builtins: Make tone option for WaitExten configurable - 1396: [new-feature]: pbx_builtins: Make tone option for WaitExten configurable
- 1401: [bug]: app_waitfornoise timeout is always less then configured because of time() usage - 1401: [bug]: app_waitfornoise timeout is always less then configured because of time() usage
- 1451: [bug]: ast_config_text_file_save2(): incorrect handling of deep/wide template inheritance
- 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
- ASTERISK-30370: config: Template inheritance is incorrect for ast_variable_retrieve - ASTERISK-30370: config: Template inheritance is incorrect for ast_variable_retrieve
### Commits By Author: ### Commits By Author:
@@ -179,11 +184,14 @@
- #### Ben Ford (1): - #### Ben Ford (1):
- res_rtp_asterisk: Don't send RTP before DTLS has negotiated. - res_rtp_asterisk: Don't send RTP before DTLS has negotiated.
- #### George Joseph (4): - #### George Joseph (7):
- xmldoc.c: Fix rendering of CLI output. - xmldoc.c: Fix rendering of CLI output.
- chan_websocket: Fix buffer overrun when processing TEXT websocket frames. - chan_websocket: Fix buffer overrun when processing TEXT websocket frames.
- chan_websocket: Allow additional URI parameters to be added to the outgoing URI. - chan_websocket: Allow additional URI parameters to be added to the outgoing URI.
- res_pjsip_authenticator_digest: Fix SEGV if get_authorization_hdr returns NULL. - res_pjsip_authenticator_digest: Fix SEGV if get_authorization_hdr returns NULL.
- 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.
- #### Igor Goncharovsky (2): - #### Igor Goncharovsky (2):
- app_waitforsilence.c: Use milliseconds to calculate timeout time - app_waitforsilence.c: Use milliseconds to calculate timeout time
@@ -233,6 +241,10 @@
- logger.c: Remove deprecated/redundant configuration option. - logger.c: Remove deprecated/redundant configuration option.
- func_dialplan: Remove deprecated/redundant function. - func_dialplan: Remove deprecated/redundant function.
- Update version for Asterisk 23 - Update version for Asterisk 23
- config.c: fix saving of deep/wide template configurations
- 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.
- chan_websocket.c: Add DTMF messages - chan_websocket.c: Add DTMF messages
- app_queue.c: Add new global 'log_unpause_on_reason_change' - app_queue.c: Add new global 'log_unpause_on_reason_change'
- app_waitforsilence.c: Use milliseconds to calculate timeout time - app_waitforsilence.c: Use milliseconds to calculate timeout time
@@ -481,6 +493,66 @@
Date: 2025-08-13 Date: 2025-08-13
#### config.c: fix saving of deep/wide template configurations
Author: Allan Nathanson
Date: 2025-09-10
Follow-on to #244 and #960 regarding how the ast_config_XXX APIs
handle template inheritance.
ast_config_text_file_save2() incorrectly suppressed variables if they
matched any ancestor template. This broke deep chains (dropping values
based on distant parents) and wide inheritance (ignoring last-wins order
across multiple parents).
The function now inspects the full template hierarchy to find the nearest
effective parent (last occurrence wins). Earlier inherited duplicates are
collapsed, explicit overrides are kept unless they exactly match the parent,
and PreserveEffectiveContext avoids writing redundant lines.
Resolves: #1451
#### 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
#### chan_websocket.c: Add DTMF messages #### chan_websocket.c: Add DTMF messages
Author: Joe Garlick Author: Joe Garlick
Date: 2025-09-04 Date: 2025-09-04

View File

@@ -1,4 +1,4 @@
<html><head><title>Readme for asterisk-23.0.0-rc2</title></head><body> <html><head><title>Readme for asterisk-23.0.0</title></head><body>
<h1>The Asterisk(R) Open Source PBX</h1> <h1>The Asterisk(R) Open Source PBX</h1>
<pre><code>By Mark Spencer &lt;markster@digium.com&gt; and the Asterisk.org developer community. <pre><code>By Mark Spencer &lt;markster@digium.com&gt; and the Asterisk.org developer community.
Copyright (C) 2001-2025 Sangoma Technologies Corporation and other copyright holders. Copyright (C) 2001-2025 Sangoma Technologies Corporation and other copyright holders.
@@ -37,7 +37,7 @@ hardware.</p>
<p>If you are updating from a previous version of Asterisk, make sure you <p>If you are updating from a previous version of Asterisk, make sure you
read the Change Logs.</p> read the Change Logs.</p>
<!-- CHANGELOGS (the URL will change based on the location of this README) --> <!-- CHANGELOGS (the URL will change based on the location of this README) -->
<p><a href="ChangeLogs/ChangeLog-23.0.0-rc2.html">Change Logs</a></p> <p><a href="ChangeLogs/ChangeLog-23.0.0.html">Change Logs</a></p>
<!-- END-CHANGELOGS --> <!-- END-CHANGELOGS -->
<h3>NEW INSTALLATIONS</h3> <h3>NEW INSTALLATIONS</h3>

View File

@@ -55,7 +55,7 @@ If you are updating from a previous version of Asterisk, make sure you
read the Change Logs. read the Change Logs.
<!-- CHANGELOGS (the URL will change based on the location of this README) --> <!-- CHANGELOGS (the URL will change based on the location of this README) -->
[Change Logs](ChangeLogs/ChangeLog-23.0.0-rc2.html) [Change Logs](ChangeLogs/ChangeLog-23.0.0.html)
<!-- END-CHANGELOGS --> <!-- END-CHANGELOGS -->
### NEW INSTALLATIONS ### NEW INSTALLATIONS