The Asterisk Development Team would like to announce the first release candidate of Asterisk 17.0.0.
This release candidate is available for immediate download at
https://downloads.asterisk.org/pub/telephony/asterisk
The release of Asterisk 17.0.0-rc1 resolves several issues reported by the
community and would have not been possible without your participation.
Thank you!
The following issues are resolved in this release candidate:
Security bugs fixed in this release:
———————————–
  | 
res_pjsip_messaging: In-dialog MESSAGE with no body causes crash (Reported by Gil Richard)  | 
|
  | 
Broken SDP can cause a segfault in a T.38 reINVITE (Reported by Francesco Castellano)  | 
|
  | 
Asterisk segfault when rtp negotiation is wrong or fails (Reported by Sotiris Ganouris)  | 
|
  | 
Buffer overflow for DNS SRV/NAPTR records (Reported by Jan Hoffmann)  | 
|
  | 
res_http_websocket: Crash when reading HTTP Upgrade requests (Reported by Sean Bright)  | 
New Features made in this release:
———————————–
  | 
Add native Prometheus support to Asterisk (Reported by Matt Jordan)  | 
|
  | 
res_pjsip: New configuration setting to allow disabling norefersub (Reported by Dan Cropp)  | 
|
  | 
Added ARI resource /ari/channels/{channelid}/rtp_statistics (Reported by sungtae kim)  | 
|
  | 
res_stasis: Add ability to switch applications (Reported by Benjamin Keith Ford)  | 
|
  | 
add flag to allow CALLERID(num) to be placed in Contact header in chan_pjsip (Reported by Torrey Searle)  | 
|
  | 
res_pjsip: Implement additional SIP RFCs for Google Voice trunk compatability (Reported by Nick French)  | 
Bugs fixed in this release:
———————————–
  | 
PJSIP cnonce generated on Linux contains 36 characters, NEC only supports up to 32 characters (Reported by Dan Cropp)  | 
|
  | 
app_voicemail/IMAP: segfault in leave_voicemail because not checking mailstream (Reported by Alexei Gradinari)  | 
|
  | 
compile menuselect on gentoo (Reported by Kilburn)  | 
|
  | 
Asterisk occasionally passes a NULL as srtp->session to srtp_protect/unprotect causing SEGV (Reported by Jonas Swiatek)  | 
|
  | 
cel / cdr: Event times may be incorrect (Reported by Joshua C. Colp)  | 
|
  | 
json integer overflow in ssrc and timestamp (Reported by Salah Ahmed)  | 
|
  | 
res_pjsip: pjsip show contacts prints double entries (Reported by Ian Jones)  | 
|
  | 
packet lost on UDPTL wrap around (Reported by Torrey Searle)  | 
|
  | 
Crash when not specifying “dbfile” in res_config_sqlite3.conf (Reported by Dennis)  | 
|
  | 
Crash performing “core reload” with modified res_config_sqlite3.conf (Reported by Dennis)  | 
|
  | 
AST_SCHED_REPLACE_UNREF causes wait-on-self deadlocks (in chan_sip) (Reported by Walter Doekes)  | 
|
  | 
res_pjsip_mwi: Memory leak on reload (Reported by Sergej Kasumovic)  | 
|
  | 
 Fix crash in chan_dahdi on 32-bit systems caused by ASTERISK-28317 (Reported by abelbeck)  | 
|
  | 
res_pjsip_sdp_rtp: Remove unused variable (Reported by Michael Maier)  | 
|
  | 
Show offending IP for TLS setup failures in logs (Reported by Oleksandr Natalenko)  | 
|
  | 
chan_pjsip: Peer IP for SSL handshake errors not logged (Reported by Bernhard Schmidt)  | 
|
  | 
chan_pjsip: Transfer() does not result in TRANSFERSTATUS reflecting SIP response to transfer (Reported by Dan Cropp)  | 
|
  | 
app_amd: Does not work with silence suppression (Reported by Nasir Iqbal)  | 
|
  | 
IP Fragmentation happening instead of DTLS fragmentation on handshake server hello certificate (Reported by vijay kumar)  | 
|
  | 
Crash in hangup at chan_pjsip.c:1749 when Asterisk attempts to generate hangup event (Reported by Abhay Gupta)  | 
|
  | 
cdr_pgsql: Unix socket doesn’t work (Reported by Dmitry Svyatogorov)  | 
|
  | 
res_fax: Fax session leak with fax gatewaying (Reported by pasandev)  | 
|
  | 
new mwi.h include missing from some dahdi source files, causes build failure (Reported by Guido Falsi)  | 
|
  | 
Wrong type used for timestamp in res_rtp_asterisk (Reported by Morten Tryfoss)  | 
|
  | 
PJSIP: Early media ringback not indicated after Progress() (Reported by Gregory Massel)  | 
|
  | 
GCC 9 catches more string formatting issues (Reported by George Joseph)  | 
|
  | 
pjsip: show channelstats incorrect information output (Reported by Vyrva Igor)  | 
|
  | 
channel.c: Exceptionally long queue length queuing (Reported by Abhay Gupta)  | 
|
  | 
The no-partial-inlining flag isn’t passed to the bundled pjproject or jansson builds (Reported by George Joseph)  | 
|
  | 
res_pjsip_registrar: SEGV in registrar_find_contact (Reported by Ross Beer)  | 
|
  | 
bridge: Failure to impart a channel results in bad data causing crash (Reported by Abhay Gupta)  | 
|
  | 
ARI: Bridge destroying doesn’t work as expected (Reported by Marin Odrljin)  | 
|
  | 
app_amd: Infinite loop on silent calls (Reported by Abhay Gupta)  | 
|
  | 
stasis: Crash at shutdown when statistics enabled (Reported by Joshua C. Colp)  | 
|
  | 
latest asterisk unconditionally launch gcc –version, even if the compiler is different (Reported by Guido Falsi)  | 
|
  | 
res_indications: Crash requesting autocomplete on indications cli command (Reported by Lucas Mendes)  | 
|
  | 
app_voicemail: emailbody per user can’t contain commas (Reported by Sébastien Duthil)  | 
|
  | 
1.8.3.2 extenpatternmatchnew=yes cannot find extensions with ‘-‘ in them (Reported by test011)  | 
|
  | 
AEL reload causes loss of control in a macro (Reported by Kirill Katsnelson)  | 
|
  | 
AEL for loops use Macro app and pipe delimiter (Reported by Luke-Jr)  | 
|
  | 
AEL parsers does not find existing label (Reported by klaus3000)  | 
|
  | 
Parsing a label beginning with a numeric character in all Goto/GotoIf/GotoIfTime application causes unexpected behavior (Reported by Janu)  | 
|
  | 
Failed to initialize OOH323 endpoint-OOH323 Disabled (Reported by Dmitry Shubin)  | 
|
  | 
chan_pjsip: DTMF Mode auto_info fallback lead to both inband and info (Reported by Salah Ahmed)  | 
|
  | 
musl: Crash on startup when loading modules (Reported by Sebastian Kemper)  | 
|
  | 
strtok_r() makes gcc compile warning (Reported by sungtae kim)  | 
|
  | 
res_rtp_asterisk: REMB RTCP packet sending may be incorrect (Reported by Joshua C. Colp)  | 
|
  | 
app_queue: Queue paused reason was (big number) secs ago when reason is set (Reported by César Benjamín García Martínez)  | 
|
  | 
QUEUE_MEMBER ‘s description is inaccurate (Reported by Olivier Krief)  | 
|
  | 
manager: Stasis backed up due to locking (Reported by Joshua C. Colp)  | 
|
  | 
chan_sip: qualifygap bounds checking (Reported by Paul Sandys)  | 
|
  | 
res_config_odbc eliminates empty custom (“@” prefix) variables (Reported by Alexei Gradinari)  | 
|
  | 
StasisEnd event makes wrong timestamp value (Reported by sungtae kim)  | 
|
  | 
res_pjsip_mwi: MWI NOTIFY occasionally takes minutes to be sent (Reported by Jared Hull)  | 
|
  | 
Variable ALTCONF ignored when service is used in Debian (Reported by Cirillo Ferreira)  | 
|
  | 
app_queue: ring_entry accesses nativeformats without channel lock or reference (Reported by Francisco Seratti)  | 
|
  | 
stasis: Make topic and maybe subscription names unique and more useful (Reported by Joshua C. Colp)  | 
|
  | 
res_rtp_asterisk: Fixing possible divide by zero for rtcp stat calculation (Reported by sungtae kim)  | 
|
  | 
chan_pjsip: Add option to allow ignoring of 183 without SDP (Reported by Torrey Searle)  | 
|
  | 
MeetMe global non-admin mute is muting admins that subsequently join (Reported by Philip Mott)  | 
|
  | 
app_queue: Adding a blank entry into sql queue_members crashes asterisk. (Reported by Michael)  | 
|
  | 
pjsip: sip.conf to pjsip.conf conversion script fails (Reported by Guido Weckwerth)  | 
|
  | 
The basic-pbx config samples don’t produce a running asterisk (Reported by George Joseph)  | 
|
  | 
res_pjsip_diversion: Corrupted SIP Diversion field after handling a 302 redirect (Reported by Alex Odrov)  | 
|
  | 
File menuselect/menuselect_gtk.c has no license header (Reported by Jeremy Lainé)  | 
|
  | 
app_voicemail: Asterisk unresponsive after changing voicemail password with ODBC (Reported by Michael)  | 
|
  | 
res_pjsip: Wrong Contact and Via fields with multiple UDP interfaces (Reported by Nikolay shakin)  | 
|
  | 
PJSIP: Adding `sends_registrations = yes` to pjsip_wizard.conf causes crash (Reported by Jonathan Harris)  | 
|
  | 
res_pjsip: Threads pile up needlessly when AOR is blocked (Reported by Ross Beer)  | 
|
  | 
Allow voicemail boxes to be subscribed to with a presence event package (Reported by George Joseph)  | 
|
  | 
res_rtp_asterisk: Interaction between smoother and DTMF can cause out of order timestamps (Reported by Torrey Searle)  | 
|
  | 
ARI: “Error destroying mutex” when listing all ARI applications (Reported by Stefan Repke)  | 
|
  | 
AST_PBX_MAX_STACK is too low for some applications (Reported by George Joseph)  | 
|
  | 
Astricon Feedback: Unable to filter ARI events when GETting causes overload of events (Reported by George Joseph)  | 
|
  | 
switching between native_bridge and simple_bridge can cause one way audio (Reported by Torrey Searle)  | 
|
  | 
CI: Fix CI so it reverifies commit message changes (Reported by George Joseph)  | 
|
  | 
database: Add some basic logging (Reported by Joshua C. Colp)  | 
|
  | 
ari: Originating overwrites channel start time (Reported by sungtae kim)  | 
|
  | 
Deadlock in chan_sip handling subscribe request during res_parking reload (Reported by Giuseppe Sucameli)  | 
|
  | 
AstriCon Feedback: Automatically create a 1 line dialplan context for stasis apps (Reported by George Joseph)  | 
|
  | 
Opensuse Leap 15 –with-jannson-bundled will not compile (Reported by David Wilcox)  | 
|
  | 
PJSIP realtime. getcontext not working with DUNDI (Reported by Ray)  | 
|
  | 
codec_opus: errors setting max_playback_rate and bitrate to “sdp” (Reported by Gianluca Merlo)  | 
|
  | 
res_http_websocket: PING / PONG opcodes break data reception (Reported by Jeremy Lainé)  | 
|
  | 
build: Cross-compilation fails for target arm-linux-gnueabihf (Reported by Jean Aunis – Prescom)  | 
|
  | 
HangupHandler manager events are never thrown (Reported by Gerald Schnabel)  | 
|
  | 
res_http_websocket: Not responding to Connection Close Frame (opcode 8) (Reported by Jeremy Lainé)  | 
|
  | 
res_monitor: Segfault with Monitor(wav,file,i) (Reported by Valentin Vidić)  | 
|
  | 
stasis: Filter messages at publishing to AMI/ARI (Reported by Joshua C. Colp)  | 
|
  | 
stasis: ast_endpoint struct holds the channel_ids of channels past destruction in certain cases (Reported by Mohit Dhiman)  | 
|
  | 
res_rtp_asterisk: abs-send-time extension added with Asterisk 15.5.0 breaks GXV3140 video telephony (Reported by David Kuehling)  | 
|
  | 
core: RAII using clang use-after-scope issue (Reported by Diederik de Groot)  | 
|
  | 
 need to reset DTMF last sequence number and timestamp on RTP renegotiation (Reported by Alexei Gradinari)  | 
|
  | 
app_voicemail: Channel variable VM_MESSAGEFILE not updated correctly if message marked “urgent” (Reported by boatright)  | 
|
  | 
app_queue: Asterisk crashes when using Queue with a pre-dial handler (option b) (Reported by Mark)  | 
|
  | 
stasis: Statistics broke ABI under developer mode (Reported by Joshua C. Colp)  | 
|
  | 
Regression: MWI polling no longer works (Reported by abelbeck)  | 
|
  | 
Bug in ast_coredumper (Reported by Andrew Nagy)  | 
|
  | 
app_voicemail: Leaving voicemail sometimes doesn’t trigger NOTIFYs (Reported by George Joseph)  | 
|
  | 
 Asterisk 15.4.1 h264 fmtp negotiation problem (Reported by David Kuehling)  | 
|
  | 
 confbridge: no announce to the marked users when they join an empty conference (Reported by Alexei Gradinari)  | 
|
  | 
stasis: Add statistics for usage when in developer mode (Reported by Joshua C. Colp)  | 
|
  | 
stasis: Filter messages at publishing based on to_* presence (Reported by Joshua C. Colp)  | 
|
  | 
chan_sip: Leak using contact ACL (Reported by Giuseppe Sucameli)  | 
|
  | 
Asterisk crashes when the res_pjsip_* modules unload (Reported by sungtae kim)  | 
|
  | 
app_queue: Revert broken queue channel reference patch (Reported by lvl)  | 
|
  | 
chan_pjsip: When connected_line_method is set to invite, we’re not trying UPDATE (Reported by George Joseph)  | 
|
  | 
chan_pjsip: When connected_line_method is set to invite, asterisk is not trying UPDATE (Reported by nappsoft)  | 
|
  | 
app_voicemail: MWI fails with mailboxes=##@device instead of mailboxes=##@default (Reported by Ronald Raikes)  | 
|
  | 
stasis: Segment channel snapshot to reduce creation cost (Reported by Joshua C. Colp)  | 
|
  | 
stasis: Use implementation specific cache for channel snapshots (Reported by Joshua C. Colp)  | 
|
  | 
SIGABRT caused by stack corruption in hashkeys_read when no matching keys present (Reported by Michael Walton)  | 
|
  | 
repeated segmentation faults (Reported by Eyal Hasson)  | 
|
  | 
stasis: Filter messages at publishing to reduce work done (Reported by Joshua C. Colp)  | 
|
  | 
ARI /channels/create handler causes core dump (Reported by sungtae kim)  | 
|
  | 
Incorrect Behavior for rewrite_contact when Re-Invite omits routset (Reported by Torrey Searle)  | 
|
  | 
Some conditions prevent running of el_end, break the terminal. (Reported by Corey Farrell)  | 
|
  | 
rtp: Incorrect Packetization (Reported by Robert Cripps)  | 
|
  | 
pbx_config: Only the first [globals] section is processed. (Reported by Corey Farrell)  | 
|
  | 
Formatting error in documentation (Reported by Scott Griepentrog)  | 
|
  | 
chan_sip: Asterisk 12+ chan_sip doesn’t report AST_CEL_PICKUP in handle_invite_replaces (Reported by Luit van Drongelen)  | 
|
  | 
res_pjsip_notify: improve realtime performance on CLI completion on the endpoint (Reported by Alexei Gradinari)  | 
|
  | 
Caller ID cannot be changed on Attended Transfer before dialing out (Reported by Alexei Gradinari)  | 
|
  | 
app_confbridge: Participant info labels aren’t being added to the SDPs (Reported by George Joseph)  | 
|
  | 
function ast_sendtext() create RTP realtime packets with a trailing null byte in the payload (Reported by Emmanuel BUU)  | 
|
  | 
bridging: Asterisk crashes when receiving an empty realtime text frame (Reported by Emmanuel BUU)  | 
|
  | 
app_queue: QueueMemberStatus Event flooding AMI (Reported by Andrej)  | 
|
  | 
res_pjsip: improve realtime performance on CLI ‘pjsip show contacts’ (Reported by Alexei Gradinari)  | 
|
  | 
app_queue: Queue member considered inuse after immediately hanging up during dialing. (Reported by Cao Minh Hiep)  | 
|
  | 
stasis: Playing MOH to bridge with ARI does not work (Reported by Cameron)  | 
|
  | 
res_odbc: missing SQL error diagnostic (Reported by Alexei Gradinari)  | 
|
  | 
chan_sip: SipNotify via AMI behaves differently to CLI (Reported by Peter Katzmann)  | 
|
  | 
configure script does not enforce libunbound2 version (Reported by Samuel Galarneau)  | 
|
  | 
testsuite: Sniffer assumes pjmedia will use ports below 10000 (Reported by Joshua C. Colp)  | 
|
  | 
rtp: Crash in off-nominal case where RTP instance can’t be set up (Reported by Lei Fu)  | 
|
  | 
chan_sip unstable with TLS after asterisk start or reloads (Reported by David Hajek)  | 
|
  | 
PJSIP: Update bundled PJPROJECT to version 2.8 (Reported by Joshua C. Colp)  | 
|
  | 
chan_pjsip: Declined video stream is added when no video codecs configured and session refresh with removed video stream occurs (Reported by Will)  | 
|
  | 
AMI event “NewExten” is set to the wrong class (Reported by lvl)  | 
|
  | 
res_pjproject build failure (Reported by Jaco Kroon)  | 
|
  | 
 res_musiconhold : music on hold will not start if previous hold just reached end of file (Reported by Frederic LE FOLL)  | 
|
  | 
channel.c: ARI ring only once (Reported by Hajek Michal)  | 
|
  | 
Realtime queuemembers are not updated during retry phase (Reported by lvl)  | 
|
  | 
alembic: PJSIP “mwi_subscribe_replaces_unsolicited” field is integer not boolean (Reported by Joshua C. Colp)  | 
|
  | 
res_pjsip_transport_websocket: Properly set ‘received’ for IPv6 (Reported by Sean Bright)  | 
|
  | 
When T.140 realtime text is negociated, a lot of debug traces are generated (Reported by Emmanuel BUU)  | 
|
  | 
PBX calls via chan_sip TCP trunk now get authentification error (Reported by Ian Gilmour)  | 
|
  | 
res_pjsip realtime: uri column in ps_contacts table can be too short (Reported by Florian Floimair)  | 
|
  | 
res_pjsip_t38: Crash receiving 1xx responses other than 100 before 200 for T.38 reINVITE (Reported by Joshua Elson)  | 
|
  | 
rtcp-mux is put in SDP answer regardless of offer (Reported by Torrey Searle)  | 
|
  | 
No joint capabilities with video and audio-only streams (Reported by Benjamin Keith Ford)  | 
|
  | 
app_queue: QUEUESTATUS = CONTINUE instead LEAVEEMPTY (Reported by Valentin Safonov)  | 
|
  | 
pjproject_bundled: Fix for Solaris builds. Do not undef s_addr. (Reported by Alexander Traud)  | 
|
  | 
Wrong SRTP use status report (Reported by Salah Ahmed)  | 
|
  | 
res_pjsip_registrar: Improve performance of inbound handling (Reported by Joshua C. Colp)  | 
|
  | 
pjsip: Race condition in 183 re transmission can result in a deadlock (Reported by Torrey Searle)  | 
|
  | 
make menuselect fails due to undefined symbols (initscr32, w32addch) in menuselect_curses.o (Reported by Majdi Bsoul)  | 
|
  | 
[regression] menuselect compilation failure on Solaris 10 (Reported by Samuel Owens)  | 
|
  | 
menuselect compilation failure on Solaris 10 / gcc 3.4.3 (Reported by rleasure)  | 
|
  | 
menuselect compilation failure on Solaris 10/gcc-4.1.1 (Reported by Bob Atkins)  | 
|
  | 
BuildSystem: Enable Jansson in Solaris 11. (Reported by Alexander Traud)  | 
|
  | 
res_pjsip_endpoint_identifier_ip only matches against “generic string” headers (Reported by George Joseph)  | 
|
  | 
res_rtp_asterisk: Requires OpenSSL in Developer Mode. (Reported by Alexander Traud)  | 
|
  | 
Frack errors in stasis.c and memory leakage (Reported by Siruja Maharjan)  | 
|
  | 
res_pjsip: Change default transport keepalive to preserve behavior (Reported by Joshua C. Colp)  | 
|
  | 
systemd: asterisk.service (Reported by seanchann.zhou)  | 
Improvements made in this release:
———————————–
  | 
app_voicemail: remove dependency on stasis cache (Reported by Kevin Harwell)  | 
|
  | 
stasis_state: Create a stasis module to cache last known state (Reported by Kevin Harwell)  | 
|
  | 
res_ari_channels: Added detail hangup code settings (Reported by sungtae kim)  | 
|
  | 
pbx_dundi: Add IPv4/IPv6 dual bind support for DUNDi (Reported by Kirsty Tyerman)  | 
|
  | 
app_confbridge: Add *_all remb behavior variants (Reported by Joshua C. Colp)  | 
|
  | 
res_rtp_asterisk / res_pjsip_sdp_rtp: Add support for transport-cc (Reported by Joshua C. Colp)  | 
|
  | 
Millisecond-resolution call stats including PDD in channel variables (Reported by Antoni Goldstein)  | 
|
  | 
Added detail subscriber/subscription info for stasis show app cli (Reported by sungtae kim)  | 
|
  | 
Asterisk should clear out any .lock files in the voice mail directory on startup. (Reported by Steven Wheeler)  | 
|
  | 
build: CHANGES/UPGRADE are irritating to work with. (Reported by Corey Farrell)  | 
|
  | 
Added topic_all container (Reported by sungtae kim)  | 
|
  | 
Added app_name, app_data to channel type (Reported by sungtae kim)  | 
|
  | 
ari: Added timestamp for some ari events. (Reported by sungtae kim)  | 
|
  | 
Add logical group at DAHDIChannel event and create “dahdi_group” at CHANNEL function (Reported by Cirillo Ferreira)  | 
|
  | 
Added creation timestamp for bridge (Reported by sungtae kim)  | 
|
  | 
Allow wrapuptime to be set for each queue member (Reported by Rodrigo Ramirez Norambuena)  | 
|
  | 
app_queue: Per-member wrapup time missing from AddQueueMember application (Reported by Niksa Baldun)  | 
|
  | 
Changed to show all channel stats including wrong media (Reported by sungtae kim)  | 
|
  | 
res_pjsip_session: Adding rtcp stats result into the session (Reported by sungtae kim)  | 
|
  | 
Support skipping on the g726 format (Reported by Eyal Hasson)  | 
|
  | 
bridge_softmix: Does not support WebRTC source with multi video tracks. (Reported by Xiemin Chen)  | 
|
  | 
res_ari: Add new hangup causes for ARI Channel DELETE command (Reported by Sebastian Damm)  | 
|
  | 
 New function PJSIP_PARSE_URI to parse an URI and return a specified part of the URI (Reported by Alexei Gradinari)  | 
|
  | 
Allow the sip_to_pjsip script to be used in a pipe (Reported by Pascal Cadotte Michaud)  | 
|
  | 
Remove stale nonoptreq references (Reported by Walter Doekes)  | 
|
  | 
 Add IPv6 Support for DUNDi (Reported by Adam Secombe)  | 
|
  | 
PJSIP: Missing “party=calling”/”party=called” in Remote-Party-ID (Reported by Eric Dantie)  | 
|
  | 
pjproject_bundled: Find shared libraries in root –with-ssl=PATH. (Reported by Alexander Traud)  | 
|
  | 
pjsip_wizard example gives wrong info about unsupported SRV records (Reported by Jonathan Harris)  | 
|
  | 
res_rtp_asterisk: T.140 packets containing backspace or end of line are merged with regular text and it causes some UA to break (Reported by Emmanuel BUU)  | 
For a full list of changes in this release candidate, please see the ChangeLog:
https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-17.0.0-rc1
Thank you for your continued support of Asterisk!