head 1.3; access; symbols pkgsrc-2026Q1:1.3.0.8 pkgsrc-2026Q1-base:1.3 pkgsrc-2025Q4:1.3.0.6 pkgsrc-2025Q4-base:1.3 pkgsrc-2025Q3:1.3.0.4 pkgsrc-2025Q3-base:1.3 pkgsrc-2025Q2:1.3.0.2 pkgsrc-2025Q2-base:1.3 pkgsrc-2025Q1:1.1.0.8 pkgsrc-2025Q1-base:1.1 pkgsrc-2024Q4:1.1.0.6 pkgsrc-2024Q4-base:1.1 pkgsrc-2024Q3:1.1.0.4 pkgsrc-2024Q3-base:1.1 pkgsrc-2024Q2:1.1.0.2 pkgsrc-2024Q2-base:1.1; locks; strict; comment @# @; 1.3 date 2025.06.02.04.37.03; author jnemeth; state Exp; branches; next 1.2; commitid maEszoROrEUNTgXF; 1.2 date 2025.05.19.06.57.35; author jnemeth; state Exp; branches; next 1.1; commitid ZpeVv2UYZwTG8uVF; 1.1 date 2024.04.08.03.20.07; author jnemeth; state Exp; branches; next ; commitid o1bJzPWaTgOnZh5F; desc @@ 1.3 log @Upgrade to Asterisk 21.9.1: pkgsrc changes: - add gsed to USE_TOOLS - appease pkglint somewhat - PR/58978 -- comms/asterisk build fails if prefix is not /usr/pkg ## Change Log for Release asterisk-21.9.1 ### Links: - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.9.1.html) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.9.0...21.9.1) ### Summary: - Commits: 2 - Commit Authors: 1 - Issues Resolved: 0 - Security Advisories Resolved: 2 - [GHSA-2grh-7mhv-fcfw](https://github.com/asterisk/asterisk/security/advisories/GHSA-2grh-7mhv-fcfw): Using malformed From header can forge identity with ";" or NULL in name portion - [GHSA-c7p6-7mvq-8jq2](https://github.com/asterisk/asterisk/security/advisories/GHSA-c7p6-7mvq-8jq2): cli_permissions.conf: deny option does not work for disallowing shell commands ### User Notes: - #### asterisk.c: Add option to restrict shell access from remote consoles. A new asterisk.conf option 'disable_remote_console_shell' has been added that, when set, will prevent remote consoles from executing shell commands using the '!' prefix. Resolves: #GHSA-c7p6-7mvq-8jq2 ### Commit Authors: - George Joseph: (2) ## Issue and Commit Detail: ### Closed Issues: - !GHSA-2grh-7mhv-fcfw: Using malformed From header can forge identity with ";" or NULL in name portion - !GHSA-c7p6-7mvq-8jq2: cli_permissions.conf: deny option does not work for disallowing shell commands ### Commits By Author: - #### George Joseph (2): - res_pjsip_messaging.c: Mask control characters in received From display name - asterisk.c: Add option to restrict shell access from remote consoles. @ text @$NetBSD: patch-configure,v 1.2 2025/05/19 06:57:35 jnemeth Exp $ regen from configure.ac --- configure.orig 2025-05-22 15:57:26.000000000 +0000 +++ configure @@@@ -5169,13 +5169,9 @@@@ esac case "${host_os}" in netbsd*) ac_default_prefix=/usr/pkg - CPPFLAGS=-I/usr/pkg/include - LDFLAGS=-L/usr/pkg/lib ;; dragonfly*|freebsd*) ac_default_prefix=/usr/local - CPPFLAGS=-I/usr/local/include - LDFLAGS=-L/usr/local/lib ;; openbsd*) ac_default_prefix=/usr/local @@@@ -5187,8 +5183,6 @@@@ case "${host_os}" in astmandir=/usr/share/man fi fi - CPPFLAGS=-I/usr/local/include - LDFLAGS=-L/usr/local/lib ;; darwin*) ac_default_prefix=/usr/local @@@@ -20890,12 +20884,12 @@@@ else case e in #( e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clang -fblocks" >&5 printf %s "checking for clang -fblocks... " >&6; } - if test "`echo 'int main(){return ^{return 42;}();}' | ${CC} -o /dev/null -fblocks -x c - 2>&1`" = ""; then + if test "`echo 'int main(){return ^{return 42;}();}' | ${CC} ${LDFLAGS} -o /dev/null -fblocks -x c - 2>&1`" = ""; then AST_CLANG_BLOCKS_LIBS="" AST_CLANG_BLOCKS="-Wno-unknown-warning-option -fblocks" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } - elif test "`echo 'int main(){return ^{return 42;}();}' | ${CC} -o /dev/null -fblocks -x c -lBlocksRuntime - 2>&1`" = ""; then + elif test "`echo 'int main(){return ^{return 42;}();}' | ${CC} ${LDFLAGS} -o /dev/null -fblocks -x c -lBlocksRuntime - 2>&1`" = ""; then AST_CLANG_BLOCKS_LIBS="-lBlocksRuntime" AST_CLANG_BLOCKS="-fblocks" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@@@ -32921,6 +32915,145 @@@@ rm -f core conftest.err conftest.$ac_obj CPPFLAGS="${saved_cppflags}" fi +if test "${ac_cv_header_sys_atomic_h+set}" = set; then + { $as_echo "$as_me:$LINENO: checking for sys/atomic.h" >&5 +$as_echo_n "checking for sys/atomic.h... " >&6; } +if test "${ac_cv_header_sys_atomic_h+set}" = set; then + $as_echo_n "(cached) " >&6 +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_sys_atomic_h" >&5 +$as_echo "$ac_cv_header_sys_atomic_h" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking sys/atomic.h usability" >&5 +$as_echo_n "checking sys/atomic.h usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking sys/atomic.h presence" >&5 +$as_echo_n "checking sys/atomic.h presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: sys/atomic.h: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: sys/atomic.h: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +## ------------------------------------------ ## +## Report this to https://issues.asterisk.org ## +## ------------------------------------------ ## +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for sys/atomic.h" >&5 +$as_echo_n "checking for sys/atomic.h... " >&6; } +if test "${ac_cv_header_sys_atomic_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_header_sys_atomic_h=$ac_header_preproc +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_sys_atomic_h" >&5 +$as_echo "$ac_cv_header_sys_atomic_h" >&6; } + +fi +if test "x$ac_cv_header_sys_atomic_h" = x""yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_SYS_ATOMIC_H 1 +_ACEOF + +fi # The cast to long int works around a bug in the HP C Compiler @ 1.2 log @Update to Asterisk 21.9.0. ## Change Log for Release asterisk-21.9.0 ### Links: - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.9.0.html) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.8.0...21.9.0) ### Summary: - Commits: 24 - Commit Authors: 18 - Issues Resolved: 12 - Security Advisories Resolved: 0 ### User Notes: - #### stasis/control.c: Set Hangup Cause to No Answer on Dial timeout A Dial timeout on POST /channels/{channelId}/dial will now result in a CANCEL and ChannelDestroyed with cause 19 / User alerting, no answer. Previously no explicit cause was set, resulting in a cause of 16 / Normal Call Clearing. - #### contrib: Add systemd service and timer files for malloc trim. Service and timer files for systemd have been added to the contrib/systemd/ directory. If you are experiencing memory issues, install these files to have "malloc trim" periodically run on the system. - #### Add log-caller-id-name option to log Caller ID Name in queue log This patch adds a global configuration option, log-caller-id-name, to queues.conf to control whether the Caller ID name is logged as parameter 4 when a call enters a queue. When log-caller-id-name=yes, the Caller ID name is included in the queue log, Any '|' characters in the caller ID name will be replaced with '_'. (provided it’s allowed by the existing log_restricted_caller_id rules). When log-caller-id-name=no (the default), the Caller ID name is omitted. - #### asterisk.c: Add "pre-init" and "pre-module" capability to cli.conf. In cli.conf, you can now define startup commands that run before core initialization and before module initialization. - #### audiosocket: added support for DTMF frames The AudioSocket protocol now forwards DTMF frames with payload type 0x03. The payload is a 1-byte ascii representing the DTMF digit (0-9,*,#...). ### Upgrade Notes: - #### ARI: REST over Websocket This commit adds the ability to make ARI REST requests over the same websocket used to receive events. See https://docs.asterisk.org/Configuration/Interfaces/Asterisk-REST-Interface-ARI/ARI-REST-over-WebSocket/ ### Commit Authors: - Albrecht Oster: (1) - Alexei Gradinari: (1) - Allan Nathanson: (1) - Andreas Wehrmann: (1) - Ben Ford: (1) - Florent CHAUVEAU: (1) - George Joseph: (4) - Joshua C. Colp: (1) - Luz Paz: (1) - Mark Murawski: (1) - Mike Bradeen: (1) - Mkmer: (1) - Naveen Albert: (3) - Norm Harrison: (2) - Peter Jannesen: (1) - Phoneben: (1) - Sean Bright: (1) - Zhai Liangliang: (1) ## Issue and Commit Detail: ### Closed Issues: - 505: [bug]: res_pjproject: ast_sockaddr_cmp() always fails on sockaddrs created by ast_sockaddr_from_pj_sockaddr() - 643: [new-feature]: pjsip show contact -- show all details same as AMI PJSIPShowContacts - 963: [bug]: missing hangup cause for ARI ChannelDestroyed when Dial times out - 1091: [improvement]: app queue :add to queue log callerid name - 1144: [bug]: action_redirect don't remove bridge_after_goto data - 1171: [improvement]: Need the capability in audiohook.c for fractional (float) type volume adjustments. - 1181: [bug]: Incorrect PJSIP Endpoint Device States on Multiple Channels - 1190: [bug]: Crash when starting ConfBridge recording over CLI and AMI - 1197: [bug]: ChannelHangupRequest does not show cause code in all cases - 1206: [improvement]: chan_iax2: Minor improvements to documentation and warning messages. - 1220: [bug]: res_pjsip_caller_id: OLI is not parsed if contained in a URI parameter - 1224: [improvement]: app_meetme: Removal version is incorrect ### Commit List: - res_pjsip_caller_id: Also parse URI parameters for ANI2. - app_meetme: Remove inaccurate removal version from xmldocs. - docs: Fix typos in apps/ - stasis/control.c: Set Hangup Cause to No Answer on Dial timeout - chan_iax2: Minor improvements to documentation and warning messages. - pbx_ael: unregister AELSub application and CLI commands on module load failure - res_pjproject: Fix DTLS client check failing on some platforms - Prequisites for ARI Outbound Websockets - contrib: Add systemd service and timer files for malloc trim. - action_redirect: remove after_bridge_goto_info - channel: Always provide cause code in ChannelHangupRequest. - Add log-caller-id-name option to log Caller ID Name in queue log - asterisk.c: Add "pre-init" and "pre-module" capability to cli.conf. - app_confbridge: Prevent crash when publishing channel-less event. - ari_websockets: Fix frack if ARI config fails to load. - ARI: REST over Websocket - audiohook.c: Add ability to adjust volume with float - audiosocket: added support for DTMF frames - asterisk/channel.h: fix documentation for 'ast_waitfor_nandfds()' - audiosocket: fix timeout, fix dialplan app exit, server address in logs - Update config.guess and config.sub - chan_pjsip: set correct Endpoint Device State on multiple channels - file.c: missing "custom" sound files should not generate warning logs ## Change Log for Release asterisk-21.8.0 ### Links: - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.8.0.html) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.7.0...21.8.0) ### Summary: - Commits: 28 - Commit Authors: 12 - Issues Resolved: 12 - Security Advisories Resolved: 0 ### User Notes: - #### ari/pjsip: Make it possible to control transfers through ARI Call transfers on the PJSIP channel can now be controlled by ARI. This can be enabled by using the PJSIP_TRANSFER_HANDLING(ari-only) dialplan function. ### Commit Authors: - Allan Nathanson: (1) - Ben Ford: (1) - Fabriziopicconi: (1) - George Joseph: (10) - Holger Hans Peter Freyther: (1) - Jeremy Lainé: (1) - Joshua Elson: (1) - Luz Paz: (3) - Maximilian Fridrich: (1) - Mike Bradeen: (1) - Naveen Albert: (1) - Sean Bright: (6) ## Issue and Commit Detail: ### Closed Issues: - 211: [bug]: stasis: Off-nominal channel leave causes bridge to be destroyed - 1085: [bug]: utils: Compilation failure with DEVMODE due to old-style definitions - 1101: [bug]: when setting a var with a double quotes and using Set(HASH) - 1109: [bug]: Off nominal memory leak in res/ari/resource_channels.c - 1112: [bug]: STIR/SHAKEN verification doesn't allow anonymous callerid to be passed to the dialplan. - 1119: [bug]: Realtime database not working after upgrade from 22.0.0 to 22.2.0 - 1122: Need status on CVE-2024-57520 claim. - 1124: [bug]: Race condition between bridge and channel delete can over-write cause code set in hangup. - 1131: [bug]: CHANGES link broken in README.md - 1135: [bug]: Problems with video decoding due to RTP marker bit set - 1149: [bug]: res_pjsip: Mismatch in tcp_keepalive_enable causes not to enable - 1164: [bug]: WARNING Message in messages.log for res_curl.conf [globals] ### Commit List: - documentation: Update Gosub, Goto, and add new documentationtype. - res_config_curl.c: Remove unnecessary warnings. - README.md: Updates and Fixes - res_rtp_asterisk.c: Don't truncate spec-compliant `ice-ufrag` or `ice-pwd`. - fix: Correct default flag for tcp_keepalive_enable option - docs: AMI documentation fixes. - config.c: #include of non-existent file should not crash - manager.c: Check for restricted file in action_createconfig. - swagger_model.py: Fix invalid escape sequence in get_list_parameter_type(). - Revert "res_rtp_asterisk.c: Set Mark on rtp when timestamp skew is too big" - res_rtp_asterisk.c: Use correct timeout value for T.140 RED timer. - docs: Fix typos in cdr/ Found via codespell - bridging: Fix multiple bridging issues causing SEGVs and FRACKs. - res_config_pgsql: Fix regression that removed dbname config. - res_stir_shaken: Allow missing or anonymous CID to continue to the dialplan. - resource_channels.c: Fix memory leak in ast_ari_channels_external_media. - ari/pjsip: Make it possible to control transfers through ARI - channel.c: Remove dead AST_GENERATOR_FD code. - func_strings.c: Prevent SEGV in HASH single-argument mode. - docs: Add version information to AGI command XML elements. - docs: Fix minor typo in MixMonitor AMI action - utils: Disable old style definition warnings for libdb. - rtp.conf.sample: Correct stunaddr example. - docs: Add version information to ARI resources and methods. - docs: Indent tags. ## Change Log for Release asterisk-21.7.0 ### Links: - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.7.0.md) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.6.1...21.7.0) ### Summary: - Commits: 53 - Commit Authors: 20 - Issues Resolved: 19 - Security Advisories Resolved: 0 ### User Notes: - #### sig_analog: Add Last Number Redial feature. Users can now redial the last number called if the lastnumredial setting is set to yes. Resolves: #437 - #### Add SHA-256 and SHA-512-256 as authentication digest algorithms The SHA-256 and SHA-512-256 algorithms are now available for authentication as both a UAS and a UAC. - #### Upgrade bundled pjproject to 2.15.1 Resolves: asterisk#1016 Bundled pjproject has been upgraded to 2.15.1. For more information visit pjproject Github page: https://github.com/pjsip/pjproject/releases/tag/2.15.1 - #### res_pjsip: Add new AOR option "qualify_2xx_only" The pjsip.conf AOR section now has a "qualify_2xx_only" option that can be set so that only 2XX responses to OPTIONS requests used to qualify a contact will mark the contact as available. - #### app_queue: allow dynamically adding a queue member in paused state. use the p option of AddQueueMember() for paused member state. Optionally, use the r(reason) option to specify a custom reason for the pause. - #### manager.c: Add Processed Call Count to CoreStatus output The current processed call count is now returned as CoreProcessedCalls from the CoreStatus AMI Action. - #### func_curl.c: Add additional CURL options for SSL requests The following new configuration options are now available in the res_curl.conf file, and the CURL() function: 'ssl_verifyhost' (CURLOPT_SSL_VERIFYHOST), 'ssl_cainfo' (CURLOPT_CAINFO), 'ssl_capath' (CURLOPT_CAPATH), 'ssl_cert' (CURLOPT_SSLCERT), 'ssl_certtype' (CURLOPT_SSLCERTTYPE), 'ssl_key' (CURLOPT_SSLKEY), 'ssl_keytype', (CURLOPT_SSLKEYTYPE) and 'ssl_keypasswd' (CURLOPT_KEYPASSWD). See the libcurl documentation for more details. - #### res_stir_shaken: Allow sending Identity headers for unknown TNs You can now set the "unknown_tn_attest_level" option in the attestation and/or profile objects in stir_shaken.conf to enable sending Identity headers for callerid TNs not explicitly configured. ### Upgrade Notes: - #### alembic: Database updates required. Two commits in this release... 'Add SHA-256 and SHA-512-256 as authentication digest algorithms' 'res_pjsip: Add new AOR option "qualify_2xx_only"' ...have modified alembic scripts for the following database tables: ps_aors, ps_contacts, ps_auths, ps_globals. If you don't use the scripts to update your database, reads from those tables will succeeed but inserts into the ps_contacts table by res_pjsip_registrar will fail. ### Commit Authors: - Abdelkader Boudih: (3) - Alexey Khabulyak: (1) - Alexey Vasilyev: (1) - Allan Nathanson: (2) - Artem Umerov: (1) - George Joseph: (17) - Jaco Kroon: (1) - James Terhune: (1) - Joshua C. Colp: (1) - Kent: (1) - Maksim Nesterov: (1) - Maximilian Fridrich: (1) - Mike Pultz: (3) - Naveen Albert: (6) - Sean Bright: (6) - Sperl Viktor: (2) - Stanislav Abramenkov: (2) - Steffen Arntz: (1) - Tinet-Mucw: (1) - Viktor Litvinov: (1) ## Issue and Commit Detail: ### Closed Issues: - 437: [new-feature]: sig_analog: Add Last Number Redial - 851: [bug]: unable to read audiohook both side when packet lost on one side of the call - 921: [bug]: Stir-Shaken doesn’t allow B or C attestation for unknown callerid which is allowed by ATIS-1000074.v003, §5.2.4 - 927: [bug]: no audio when media source changed during the call - 948: [improvement]: Support SHA-256 algorithm on REGISTER and INVITE challenges - 993: [bug]: sig_analog: Feature Group D / E911 no longer work - 999: [bug]: Crash when setting a global variable with invalid UTF8 characters - 1007: [improvement]: Cannot dynamically add queue member in paused state from dialplan or command line - 1013: [improvement]: chan_pjsip: Send VIDUPDATE RTP frames for H.264 streams on endpoints without WebRTC - 1021: [improvement]: proper queue_log paused state when member added dynamically - 1023: [improvement]: Improve PJSIP_MEDIA_OFFER documentation - 1028: [bug]: "pjsip show endpoints" shows some identifies on endpoints that shouldn't be there - 1029: [bug]: chan_dahdi: Wrong channel state set when RINGING received - 1054: [bug]: chan_iax2: Frames unnecessarily backlogged with jitterbuffer if no voice frames have been received yet - 1058: [bug]: Asterisk fails to compile following commit 71a2e8c on Ubuntu 20.04 - 1064: [improvement]: ast_tls_script: Add option to skip passphrase for CA private key - 1075: [bug]: res_prometheus does not set Content-Type header in HTTP response - 1095: [bug]: res_pjsip missing "Failed to authenticate" log entry for unknown endpoint - 1097: [bug]: res_pjsip/pjsip_options. ODBC: Unknown column 'qualify_2xx_only' ### Commit List: - res_pjsip_authenticator_digest: Make correct error messages appear again. - alembic: Database updates required. - res_pjsip: Fix startup/reload memory leak in config_auth. - docs: Add version information to application and function XML elements - docs: Add version information to manager event instance XML elements - LICENSE: Update company name, email, and address. - res_prometheus.c: Set Content-Type header on /metrics response. - README.md, asterisk.c: Update Copyright Dates - docs: Add version information to configObject and configOption XML elements - res_pjsip_authenticator_digest: Fix issue with missing auth and DONT_OPTIMIZE - ast_tls_cert: Add option to skip passphrase for CA private key. - chan_iax2: Avoid unnecessarily backlogging non-voice frames. - config.c: fix #tryinclude being converted to #include on rewrite - sig_analog: Add Last Number Redial feature. - docs: Various XML fixes - strings.c: Improve numeric detection in `ast_strings_match()`. - docs: Enable since/version handling for XML, CLI and ARI documentation - logger.h: Fix build when AST_DEVMODE is not defined. - dialplan_functions_doc.xml: Document PJSIP_MEDIA_OFFER's `media` argument. - samples: Use "asterisk" instead of "postgres" for username - manager: Add `` tags for all AMI actions. - logger.c fix: malformed JSON template - manager.c: Rename restrictedFile to is_restricted_file. - res_pjproject: Fix typo (OpenmSSL->OpenSSL) - Add SHA-256 and SHA-512-256 as authentication digest algorithms - config.c: retain leading whitespace before comments - config.c: Fix off-nominal reference leak. - normalize contrib/ast-db-manage/queue_log.ini.sample - Add C++ Standard detection to configure and fix a new C++20 compile issue - chan_dahdi: Fix wrong channel state when RINGING recieved. - Upgrade bundled pjproject to 2.15.1 Resolves: asterisk#1016 - gcc14: Fix issues caught by gcc 14 - Header fixes for compiling C++ source files - Add ability to pass arguments to unit tests from the CLI - res_pjsip: Add new AOR option "qualify_2xx_only" - res_odbc: release threads from potential starvation. - Allow C++ source files (as extension .cc) in the main directory - format_gsm.c: Added mime type - func_uuid: Add a new dialplan function to generate UUIDs - app_queue: allow dynamically adding a queue member in paused state. - chan_iax2: Add log message for rejected calls. - chan_pjsip: Send VIDUPDATE RTP frame for all H.264 streams - res_curl.conf.sample: clean up sample configuration and add new SSL options - res_rtp_asterisk.c: Set Mark on rtp when timestamp skew is too big - res_rtp_asterisk.c: Fix bridged_payload matching with sample rate for DTMF - manager.c: Add Processed Call Count to CoreStatus output - func_curl.c: Add additional CURL options for SSL requests - sig_analog: Fix regression with FGD and E911 signaling. - res_stir_shaken: Allow sending Identity headers for unknown TNs ## Change Log for Release asterisk-21.6.1 ### Links: - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.6.1.md) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.6.0...21.6.1) ### Summary: - Commits: 1 - Commit Authors: 1 - Issues Resolved: 0 - Security Advisories Resolved: 1 - [GHSA-33x6-fj46-6rfh](https://github.com/asterisk/asterisk/security/advisories/GHSA-33x6-fj46-6rfh): Path traversal via AMI ListCategories allows access to outside files ### User Notes: - #### manager.c: Restrict ListCategories to the configuration directory. The ListCategories AMI action now restricts files to the configured configuration directory. ### Commit Authors: - Ben Ford: (1) ## Issue and Commit Detail: ### Closed Issues: - !GHSA-33x6-fj46-6rfh: Path traversal via AMI ListCategories allows access to outside files ### Commit List: - manager.c: Restrict ListCategories to the configuration directory. ### Commit Details: #### manager.c: Restrict ListCategories to the configuration directory. Author: Ben Ford Date: 2024-12-17 When using the ListCategories AMI action, it was possible to traverse upwards through the directories to files outside of the configured configuration directory. This action is now restricted to the configured directory and an error will now be returned if the specified file is outside of this limitation. Resolves: #GHSA-33x6-fj46-6rfh UserNote: The ListCategories AMI action now restricts files to the configured configuration directory. ## Change Log for Release asterisk-21.6.0 ### Links: - [Full ChangeLog](https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-21.6.0.md) - [GitHub Diff](https://github.com/asterisk/asterisk/compare/21.5.0...21.6.0) ### Summary: - Commits: 39 - Commit Authors: 9 - Issues Resolved: 22 - Security Advisories Resolved: 0 ### User Notes: - #### res_pjsip: Add new endpoint option "suppress_moh_on_sendonly" The new "suppress_moh_on_sendonly" endpoint option can be used to prevent playing MOH back to a caller if the remote end sends "sendonly" or "inactive" (hold) to Asterisk in an SDP. - #### app_mixmonitor: Add 'D' option for dual-channel audio. The MixMonitor application now has a new 'D' option which interleaves the recorded audio in the output frames. This allows for stereo recording output with one channel being the transmitted audio and the other being the received audio. The 't' and 't' options are compatible with this. - #### manager.c: Restrict ModuleLoad to the configured modules directory. The ModuleLoad AMI action now restricts modules to the configured modules directory. - #### manager: Enhance event filtering for performance You can now perform more granular filtering on events in manager.conf using expressions like `eventfilter(name(Newchannel),header(Channel),method(starts_with)) = PJSIP/` This is much more efficient than `eventfilter = Event: Newchannel.*Channel: PJSIP/` Full syntax guide is in configs/samples/manager.conf.sample. - #### db.c: Remove limit on family/key length The `ast_db_*()` APIs have had the 253 byte limit on "/family/key" removed and will now accept families and keys with a total length of up to SQLITE_MAX_LENGTH (currently 1e9!). This affects the `DB*` dialplan applications, dialplan functions, manager actions and `databse` CLI commands. Since the media_cache also uses the `ast_db_*()` APIs, you can now store resources with URIs longer than 253 bytes. ### Upgrade Notes: ### Commit Authors: - Allan Nathanson: (1) - Ben Ford: (3) - Chrsmj: (1) - George Joseph: (15) - Jiangxc: (1) - Naveen Albert: (7) - Peter Jannesen: (2) - Sean Bright: (7) - Thomas Guebels: (2) ## Issue and Commit Detail: ### Closed Issues: - 487: [bug]: Segfault possibly in ast_rtp_stop - 821: [bug]: app_dial: The progress timeout doesn't cause Dial to exit - 881: [bug]: Long URLs are being rejected by the media cache because of an astdb key length limit - 882: [bug]: Value CHANNEL(userfield) is lost by BRIDGE_ENTER - 897: [improvement]: Restrict ModuleLoad AMI action to the modules directory - 900: [bug]: astfd.c: NULL pointer passed to fclose with nonnull attribute causes compilation failure - 902: [bug]: app_voicemail: Pager emails are ill-formatted when custom subject is used - 916: [bug]: Compilation errors on FreeBSD - 923: [bug]: Transport monitor shutdown callback only works on the first disconnection - 924: [bug]: dnsmgr.c: dnsmgr_refresh() should not flag change if IP address order changes - 928: [bug]: chan_dahdi: MWI while off-hook when hung up on after recall ring - 932: [bug]: When connected to multiple IP addresses the transport monitor is only set on the first one - 937: [bug]: Wrong format for sample config file 'geolocation.conf.sample' - 938: [bug]: memory leak - CBAnn leaks a small amount format_cap related memory for every confbridge - 945: [improvement]: Add stereo recording support for app_mixmonitor - 951: [new-feature]: func_evalexten: Add `EVAL_SUB` function - 974: [improvement]: change and/or remove some wiki mentions to docs mentions in the sample configs - 979: [improvement]: Add ability to suppress MOH when a remote endpoint sends "sendonly" or "inactive" - 982: [bug]: The addition of tenantid to the ast_sip_endpoint structure broke ABI compatibility - 990: [improvement]: The help for PJSIP_AOR should indicate that you need to call PJSIP_CONTACT to get contact details - 995: [bug]: suppress_moh_on_sendonly should use AST_BOOL_VALUES instead of YESNO_VALUES in alembic script ### Commit List: - res_pjsip: Change suppress_moh_on_sendonly to OPT_BOOL_T - res_pjsip: Add new endpoint option "suppress_moh_on_sendonly" - res_pjsip.c: Fix Contact header rendering for IPv6 addresses. - samples: remove and/or change some wiki mentions - func_pjsip_aor/contact: Fix documentation for contact ID - res_pjsip: Move tenantid to end of ast_sip_endpoint - pjsip_transport_events: handle multiple addresses for a domain - func_evalexten: Add EVAL_SUB function. - res_srtp: Change Unsupported crypto suite msg from verbose to debug - Add res_pjsip_config_sangoma external module. - app_mixmonitor: Add 'D' option for dual-channel audio. - pjsip_transport_events: Avoid monitor destruction - app_dial: Fix progress timeout calculation with no answer timeout. - pjproject_bundled: Tweaks to support out-of-tree development - core_unreal.c: Fix memory leak in ast_unreal_new_channels() - dnsmgr.c: dnsmgr_refresh() incorrectly flags change with DNS round-robin - geolocation.sample.conf: Fix comment marker at end of file - func_base64.c: Ensure we set aside enough room for base64 encoded data. - app_dial: Fix progress timeout. - chan_dahdi: Never send MWI while off-hook. - manager.c: Add unit test for Originate app and appdata permissions - alembic: Drop redundant voicemail_messages index. - res_agi.c: Ensure SIGCHLD handler functions are properly balanced. - main, res, tests: Fix compilation errors on FreeBSD. - res_rtp_asterisk: Fix dtls timer issues causing FRACKs and SEGVs - manager.c: Restrict ModuleLoad to the configured modules directory. - res_agi.c: Prevent possible double free during `SPEECH RECOGNIZE` - cdr_custom: Allow absolute filenames. - astfd.c: Avoid calling fclose with NULL argument. - channel: Preserve CHANNEL(userfield) on masquerade. - cel_custom: Allow absolute filenames. - app_voicemail: Fix ill-formatted pager emails with custom subject. - res_pjsip_pubsub: Persist subscription 'generator_data' in sorcery - Fix application references to Background - manager.conf.sample: Fix mathcing typo - manager: Enhance event filtering for performance - manager.c: Split XML documentation to manager_doc.xml - db.c: Remove limit on family/key length @ text @d1 1 a1 1 $NetBSD: patch-configure,v 1.1 2024/04/08 03:20:07 jnemeth Exp $ d3 3 a5 1 --- configure.orig 2025-05-08 12:34:42.000000000 +0000 d7 24 a30 1 @@@@ -20890,12 +20890,12 @@@@ else case e in #( d45 1 a45 1 @@@@ -32921,6 +32921,145 @@@@ rm -f core conftest.err conftest.$ac_obj @ 1.1 log @comms/asterisk21: import asterisk-21.2.0 Asterisk is a complete PBX in software. It provides all of the features you would expect from a PBX and more. Asterisk does voice over IP in three protocols, and can interoperate with almost all standards-based telephony equipment using relatively inexpensive hardware. Asterisk provides Voicemail services with Directory, Call Conferencing, Interactive Voice Response, Call Queuing. It has support for three-way calling, caller ID services, ADSI, SIP and IAX. This is an standard version. It is secheduled to go to security fixes only on November 18th, 2025, and EOL on November 18th, 2026. See here for more information about Asterisk versions: https://docs.asterisk.org/About-the-Project/Asterisk-Versions Note that many things that have long been deprecated have now been removed, such as chan_sip and app_macro. See here for a complete list: http://docs.asterisk.org/Development/Asterisk-Module-Deprecations @ text @d1 1 a1 1 $NetBSD: patch-configure,v 1.2 2021/12/19 00:39:11 jnemeth Exp $ d3 1 a3 1 --- configure.orig 2024-03-18 13:25:20.000000000 +0000 d5 2 a6 2 @@@@ -10124,12 +10124,12 @@@@ else $as_nop d20 3 a22 3 @@@@ -21892,6 +21892,148 @@@@ rm -f core conftest.err conftest.$ac_obj d163 2 a164 3 + + + a165 2 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. @