pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/comms/asterisk18



Module Name:    pkgsrc
Committed By:   jnemeth
Date:           Mon Feb 19 05:59:52 UTC 2024

Modified Files:
        pkgsrc/comms/asterisk18: Makefile PLIST distinfo options.mk
        pkgsrc/comms/asterisk18/patches: patch-configure patch-main_manager.c
Added Files:
        pkgsrc/comms/asterisk18/patches:
            patch-build__tools_make__xml__documentation
            patch-channels_chan__oss.c patch-main_config.c
            patch-res_res__format__attr__celt.c
            patch-res_res__format__attr__h263.c
            patch-res_res__format__attr__ilbc.c
            patch-res_res__format__attr__opus.c
            patch-res_res__format__attr__silk.c
            patch-res_res__format__attr__siren14.c
            patch-res_res__format__attr__siren7.c
            patch-res_res__format__attr__vp8.c
            patch-res_res__pjsip__diversion.c
            patch-res_res__pjsip_pjsip__configuration.c
            patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch
Removed Files:
        pkgsrc/comms/asterisk18/patches: patch-include_asterisk_sha1.h
            patch-res_res__calendar__caldav.c
            patch-res_res__calendar__icalendar.c

Log Message:
Update to Asterisk 18.21.0

pkgsrc changes:
- adapt to various upstream changes
- update for newer version of pjproject
- add unconditional depeendency on SDL
- remove pktccops and mgcp option (has to do with supporting cable headends)
- remove various 64-bit time_t fixes as upstream is finally doing these

                               [asterisk-announce] asterisk release 18.21.0

The Asterisk Development Team would like to announce
the release of asterisk-18.21.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!

Change Log for Release asterisk-18.21.0
========================================

Summary:
----------------------------------------

- logger: Fix linking regression.
- Revert "core & res_pjsip: Improve topology change handling."
- menuselect: Use more specific error message.
- res_pjsip_nat: Fix potential use of uninitialized transport details
- app_if: Fix faulty EndIf branching.
- manager.c: Fix regression due to using wrong free function.
- config_options.c: Fix truncation of option descriptions.
- manager.c: Improve clarity of "manager show connected".
- make_xml_documentation: Really collect LOCAL_MOD_SUBDIRS documentation.
- general: Fix broken links.
- MergeApproved.yml:  Remove unneeded concurrency
- app_dial: Add option "j" to preserve initial stream topology of caller
- ast_coredumper: Increase reliability
- logger.c: Move LOG_GROUP documentation to dedicated XML file.
- res_odbc.c: Allow concurrent access to request odbc connections
- res_pjsip_header_funcs.c: Check URI parameter length before copying.
- config.c: Log #exec include failures.
- make_xml_documentation: Properly handle absolute LOCAL_MOD_SUBDIRS.
- app_voicemail.c: Completely resequence mailbox folders.
- sig_analog: Fix channel leak when mwimonitor is enabled.
- res_rtp_asterisk.c: Update for OpenSSL 3+.
- alembic: Update list of TLS methods available on ps_transports.
- func_channel: Expose previously unsettable options.
- app.c: Allow ampersands in playback lists to be escaped.
- uri.c: Simplify ast_uri_make_host_with_port()
- func_curl.c: Remove CURLOPT() plaintext documentation.
- res_http_websocket.c: Set hostname on client for certificate validation.
- live_ast: Add astcachedir to generated asterisk.conf.
- SECURITY.md: Update with correct documentation URL
- func_lock: Add missing see-also refs to documentation.
- app_followme.c: Grab reference on nativeformats before using it
- configs: Improve documentation for bandwidth in iax.conf.
- logger: Add channel-based filtering.
- chan_iax2.c: Don't send unsanitized data to the logger.
- codec_ilbc: Disable system ilbc if version >= 3.0.0
- resource_channels.c: Explicit codec request when creating UnicastRTP.
- doc: Update IP Quality of Service links.
- chan_pjsip: Add PJSIPHangup dialplan app and manager action
- chan_iax2.c: Ensure all IEs are displayed when dumping frame contents.
- chan_dahdi: Warn if nonexistent cadence is requested.
- stasis: Update the snapshot after setting the redirect
- ari: Provide the caller ID RDNIS for the channels
- main/utils: Implement ast_get_tid() for OpenBSD
- res_rtp_asterisk.c: Fix runtime issue with LibreSSL
- app_directory: Add ADSI support to Directory.
- core_local: Fix local channel parsing with slashes.
- Remove files that are no longer updated
- app_voicemail: Add AMI event for mailbox PIN changes.
- app_queue.c: Emit unpause reason with PauseQueueMember event.
- bridge_simple: Suppress unchanged topology change requests
- res_pjsip: Include cipher limit in config error message.
- res_speech: allow speech to translate input channel
- res_rtp_asterisk.c: Fix memory leak in ephemeral certificate creation.
- res_pjsip_dtmf_info.c: Add 'INFO' to Allow header.
- api.wiki.mustache: Fix indentation in generated markdown
- pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
- configs: Fix typo in pjsip.conf.sample.
- res_pjsip_exten_state,res_pjsip_mwi: Allow unload on shutdown
- res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
- .github: PRSubmitActions: Fix adding reviewers to PR
- .github: New PR Submit workflows
- .github: New PR Submit workflows
- res_stasis: signal when new command is queued
- ari/stasis: Indicate progress before playback on a bridge
- func_curl.c: Ensure channel is locked when manipulating datastores.
- .github: Fix job prereqs in PROpenedUpdated
- .github: Block PR tests until approved
- logger.h: Add ability to change the prefix on SCOPE_TRACE output
- Add libjwt to third-party
- res_pjsip: update qualify_timeout documentation with DNS note
- chan_dahdi: Clarify scope of callgroup/pickupgroup.
- func_json: Fix crashes for some types
- res_speech_aeap: add aeap error handling
- app_voicemail: Disable ADSI if unavailable.
- codec_builtin: Use multiples of 20 for maximum_ms
- lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
- asterisk.c: Use the euid's home directory to read/write cli history
- res_pjsip_transport_websocket: Prevent transport from being destroyed before message finishes.
- cel: add publish user event helper
- chan_console: Fix deadlock caused by unclean thread exit.
- file.c: Add ability to search custom dir for sounds
- chan_iax2: Improve authentication debugging.
- res_rtp_asterisk: fix wrong counter management in ioqueue objects
- make_buildopts_h, et. al.  Allow adding all cflags to buildopts.h
- func_periodic_hook: Add hangup step to avoid timeout
- res_stasis_recording.c: Save recording state when unmuted.
- res_speech_aeap: check for null format on response
- func_periodic_hook: Don't truncate channel name
- safe_asterisk: Change directory permissions to 755
- chan_rtp: Implement RTP glue for UnicastRTP channels
- app_queue: periodic announcement configurable start time.
- variables: Add additional variable dialplan functions.
- Restore CHANGES and UPGRADE.txt to allow cherry-picks to work

User Notes:
----------------------------------------

- ### app_dial: Add option "j" to preserve initial stream topology of caller
  The option "j" is now available for the Dial application which
  uses the initial stream topology of the caller to create the outgoing
  channels.

- ### logger: Add channel-based filtering.
  The console log can now be filtered by
  channels or groups of channels, using the
  logger filter CLI commands.

- ### chan_pjsip: Add PJSIPHangup dialplan app and manager action
  A new dialplan app PJSIPHangup and AMI action allows you
  to hang up an unanswered incoming PJSIP call with a specific SIP
  response code in the 400 -> 699 range.

- ### app_voicemail: Add AMI event for mailbox PIN changes.
  The VoicemailPasswordChange event is
  now emitted whenever a mailbox password is updated,
  containing the mailbox information and the new
  password.
  Resolves: #398

- ### res_speech: allow speech to translate input channel
  res_speech now supports translation of an input channel
  to a format supported by the speech provider, provided a translation
  path is available between the source format and provider capabilites.

- ### res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  With this update, the PJSIP realm lengths have been extended
  to support up to 255 characters.

- ### res_stasis: signal when new command is queued
  Call setup times should be significantly improved
  when using ARI.

- ### lock.c: Separate DETECT_DEADLOCKS from DEBUG_THREADS
  You no longer need to select DEBUG_THREADS to use
  DETECT_DEADLOCKS.  This removes a significant amount of overhead
  if you just want to detect possible deadlocks vs needing full
  lock tracing.

- ### file.c: Add ability to search custom dir for sounds
  A new option "sounds_search_custom_dir" has been added to
  asterisk.conf that allows asterisk to search
  AST_DATA_DIR/sounds/custom for sounds files before searching the
  standard AST_DATA_DIR/sounds/<lang> directory.

- ### make_buildopts_h, et. al.  Allow adding all cflags to buildopts.h
  The "Build Options" entry in the "core show settings"
  CLI command has been renamed to "ABI related Build Options" and
  a new entry named "All Build Options" has been added that shows
  both breaking and non-breaking options.

- ### chan_rtp: Implement RTP glue for UnicastRTP channels
  The dial string option 'g' was added to the UnicastRTP channel
  which enables RTP glue and therefore native RTP bridges with those
  channels.

- ### app_queue: periodic announcement configurable start time.
  Introduce a new queue configuration option called
  'periodic-announce-startdelay' which will vary the normal (historic)
  behavior of starting the periodic announcement cycle at
  periodic-announce-frequency seconds after entering the queue to start
  the periodic announcement cycle at period-announce-startdelay seconds
  after joining the queue.  The default behavior if this config option is
  not set remains unchanged.
  Signed-off-by: Jaco Kroon <jaco at uls.co.za>

- ### variables: Add additional variable dialplan functions.
  Four new dialplan functions have been added.
  GLOBAL_DELETE and DELETE have been added which allows
  the deletion of global and channel variables.
  GLOBAL_EXISTS and VARIABLE_EXISTS have been added
  which checks whether a global or channel variable has
  been set.

Upgrade Notes:
----------------------------------------

- ### app.c: Allow ampersands in playback lists to be escaped.
  Ampersands in URLs passed to the `Playback()`,
  `Background()`, `SpeechBackground()`, `Read()`, `Authenticate()`, or
  `Queue()` applications as filename arguments can now be escaped by
  single quoting the filename. Additionally, this is also possible when
  using the `CONFBRIDGE` dialplan function, or configuring various
  features in `confbridge.conf` and `queues.conf`.

- ### pjsip_configuration.c: Disable DTLS renegotiation if WebRTC is enabled.
  The dtls_rekey will be disabled if webrtc support is
  requested on an endpoint. A warning will also be emitted.

- ### res_pjsip: Expanding PJSIP endpoint ID and relevant resource length to 255 characters
  As part of this update, the maximum allowable length
  for PJSIP endpoints and relevant resources has been increased from
  40 to 255 characters. To take advantage of this enhancement, it is
  recommended to run the necessary procedures (e.g., Alembic) to
  update your schemas.

                               [asterisk-announce] asterisk release 18.20.2

The Asterisk Development Team would like to announce
the release of asterisk-18.20.2.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!

Change Log for Release asterisk-18.20.2
========================================

Summary:
----------------------------------------

- res_rtp_asterisk: Fix regression issues with DTLS client check

                               [asterisk-announce] asterisk release 18.20.1

The Asterisk Development Team would like to announce security release
Asterisk 18.20.1.

The following security advisories were resolved in this release:
- [Path traversal via AMI GetConfig allows access to outside files](https://github.com/asterisk/asterisk/s
ecurity/advisories/GHSA-8857-hfmw-vg8f)
- [Asterisk susceptible to Denial of Service via DTLS Hello packets during call initiation](https://github
.com/asterisk/asterisk/security/advisories/GHSA-hxj9-xwr8-w8pq)
- [PJSIP logging allows attacker to inject fake Asterisk log entries ](https://github.com/asterisk/asteris
k/security/advisories/GHSA-5743-x3p5-3rg7)
- [PJSIP_HEADER dialplan function can overwrite memory/cause crash when using 'update'](https://github.com
/asterisk/asterisk/security/advisories/GHSA-98rc-4j27-74hh)

Change Log for Release asterisk-18.20.1
========================================

Summary:
----------------------------------------

- res_pjsip_header_funcs: Duplicate new header value, don't copy.
- res_pjsip: disable raw bad packet logging
- res_rtp_asterisk.c: Check DTLS packets against ICE candidate list
- manager.c: Prevent path traversal with GetConfig.

                               [asterisk-announce] asterisk release 18.20.0

The Asterisk Development Team would like to announce
the release of asterisk-18.20.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!

Change Log for Release asterisk-18.20.0
========================================

Summary:
----------------------------------------

- ari-stubs: Fix more local anchor references
- ari-stubs: Fix more local anchor references
- ari-stubs: Fix broken documentation anchors
- res_pjsip_session: Send Session Interval too small response
- .github: Update workflow-application-token-action to v2
- app_dial: Fix infinite loop when sending digits.
- app_voicemail: Fix for loop declarations
- alembic: Fix quoting of the 100rel column
- pbx.c: Fix gcc 12 compiler warning.
- app_audiosocket: Fixed timeout with -1 to avoid busy loop.
- download_externals:  Fix a few version related issues
- main/refer.c: Fix double free in refer_data_destructor + potential leak
- sig_analog: Add Called Subscriber Held capability.
- app_macro: Fix locking around datastore access
- Revert "app_stack: Print proper exit location for PBXless channels."
- .github: Use generic releaser
- install_prereq: Fix dependency install on aarch64.
- res_pjsip.c: Set contact_user on incoming call local Contact header
- extconfig: Allow explicit DB result set ordering to be disabled.
- rest-api: Run make ari-stubs
- res_pjsip_header_funcs: Make prefix argument optional.
- pjproject_bundled: Increase PJSIP_MAX_MODULE to 38
- manager: Tolerate stasis messages with no channel snapshot.
- core/ari/pjsip: Add refer mechanism
- chan_dahdi: Allow autoreoriginating after hangup.
- audiohook: Unlock channel in mute if no audiohooks present.
- sig_analog: Allow three-way flash to time out to silence.
- res_prometheus: Do not generate broken metrics
- res_pjsip: Enable TLS v1.3 if present.
- func_cut: Add example to documentation.
- extensions.conf.sample: Remove reference to missing context.
- func_export: Use correct function argument as variable name.
- app_queue: Add support for applying caller priority change immediately.
- .github: Fix cherry-pick reminder issues
- chan_iax2.c: Avoid crash with IAX2 switch support.
- res_geolocation: Ensure required 'location_info' is present.
- Adds manager actions to allow move/remove/forward individual
  messages in a particular mailbox folder. The forward command can
  be used to copy a message within a mailbox or to another mailbox.
  Also adds a VoicemailBoxSummarry, required to retrieve message ID's.
- app_voicemail: add CLI commands for message manipulation
- res_rtp_asterisk: Move ast_rtp_rtcp_report_alloc using
  `rtp->themssrc_valid` into the scope of the rtp_i nstance lock.
- .github: Minor tweak to Asterisk Releaser
- .github: Suppress cherry-pick reminder for some situations
- sig_analog: Allow immediate fake ring to be suppressed.

User Notes:
----------------------------------------

- ### sig_analog: Add Called Subscriber Held capability.
  Called Subscriber Held is now supported for analog
  FXS channels, using the calledsubscriberheld option. This allows
  a station  user to go on hook when receiving an incoming call
  and resume from another phone on the same line by going on hook,
  without disconnecting the call.

- ### res_pjsip_header_funcs: Make prefix argument optional.
  The prefix argument to PJSIP_HEADERS is now
  optional. If not specified, all header names will be
  returned.

- ### core/ari/pjsip: Add refer mechanism
  There is a new ARI endpoint `/endpoints/refer` for referring
  an endpoint to some URI or endpoint.

- ### chan_dahdi: Allow autoreoriginating after hangup.
  The autoreoriginate setting now allows for kewlstart FXS
  channels to automatically reoriginate and provide dial tone to the
  user again after all calls on the line have cleared. This saves users
  from having to manually hang up and pick up the receiver again before
  making another call.

- ### sig_analog: Allow three-way flash to time out to silence.
  The threewaysilenthold option now allows the three-way
  dial tone to time out to silence, rather than continuing forever.

- ### res_pjsip: Enable TLS v1.3 if present.
  res_pjsip now allows TLS v1.3 to be enabled if supported by
  the underlying PJSIP library. The bundled version of PJSIP supports
  TLS v1.3.

- ### app_queue: Add support for applying caller priority change immediately.
  The 'queue priority caller' CLI command and
  'QueueChangePriorityCaller' AMI action now have an 'immediate'
  argument which allows the caller priority change to be reflected
  immediately, causing the position of a caller to move within the
  queue depending on the priorities of the other callers.

- ### Adds manager actions to allow move/remove/forward individual
    messages in a particular mailbox folder.  The forward command
    can be used to copy a message within a mailbox or to another
    mailbox. Also adds a Vo icemailBoxSummarry, required to retrieve
    message ID's.
  The following manager actions have been added
    VoicemailBoxSummary - Generate message list for a given mailbox
    VoicemailRemove - Remove a message from a mailbox folder
    VoicemailMove - Move a message from one folder to another within a mailbox
    VoicemailForward - Copy a message from one folder in one mailbox
      to another folder in another or the same mailbox.

- ### app_voicemail: add CLI commands for message manipulation
  The following CLI commands have been added to app_voicemail
  voicemail show mailbox <mailbox> <context>
  Show contents of mailbox <mailbox>@<context>
  voicemail remove <mailbox> <context> <from_folder> <messageid>
  Remove message <messageid> from <from_folder> in mailbox <mailbox>@<context>
  voicemail move <mailbox> <context> <from_folder> <messageid> <to_folder>
  Move message <messageid> in mailbox <mailbox>&<context> from <from_folder> to <to_folder>
  voicemail forward <from_mailbox> <from_context> <from_folder>
    <messageid> <to_mailbox> <to_context> <to_ folder>
  Forward message <messageid> in mailbox <mailbox>@<context> <from_folder> to
  mailbox <mailbox>@<context> <to_folder>

- ### sig_analog: Allow immediate fake ring to be suppressed.
  The immediatering option can now be set to no to suppress
  the fake audible ringback provided when immediate=yes on FXS channels.

                               [asterisk-announce] Asterisk Release 18.19.0

The Asterisk Development Team would like to announce
the release of Asterisk 18.19.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!

Change Log for Release 18.19.0
========================================

Summary:
----------------------------------------

- app.h: Move declaration of ast_getdata_result before its first use
- doc: Remove obsolete CHANGES-staging and UPGRADE-staging
- .github: Updates for AsteriskReleaser
- app_voicemail: fix imap compilation errors
- res_musiconhold: avoid moh state access on unlocked chan
- utils: add lock timestamps for DEBUG_THREADS
- .github: Back out triggering PROpenedOrUpdated by label
- .github: Move publish docs to new file CreateDocs.yml
- rest-api: Updates for new documentation site
- .github: Remove result check from PROpenUpdateGateTests
- .github: Fix use of 'contains'
- .github: Add recheck label test to additional jobs
- .github: Fix recheck label typos
- .github: Fix recheck label manipulation
- .github: Allow PR submit checks to be re-run by label
- app_voicemail_imap: Fix message count when IMAP server is unavailable
- res_pjsip_rfc3326: Prefer Q.850 cause code over SIP.
- res_pjsip_session: Added new function calls to avoid ABI issues.
- app_queue: Add force_longest_waiting_caller option.
- pjsip_transport_events.c: Use %zu printf specifier for size_t.
- res_crypto.c: Gracefully handle potential key filename truncation.
- configure: Remove obsolete and deprecated constructs.
- res_fax_spandsp.c: Clean up a spaces/tabs issue
- ast-db-manage: Synchronize revisions between comments and code.
- test_statis_endpoints:  Fix channel_messages test again
- res_crypto.c: Avoid using the non-portable ALLPERMS macro.
- tcptls: when disabling a server port, we should set the accept_fd to -1.
- AMI: Add parking position parameter to Park action
- test_stasis_endpoints.c: Make channel_messages more stable
- build: Fix a few gcc 13 issues
- .github: Rework for merge approval
- ast-db-manage: Fix alembic branching error caused by #122.
- app_followme: fix issue with enable_callee_prompt=no (#88)
- sounds: Update download URL to use HTTPS.
- configure: Makefile downloader enable follow redirects.
- res_musiconhold: Add option to loop last file.
- chan_dahdi: Fix Caller ID presentation for FXO ports.
- AMI: Add CoreShowChannelMap action.
- sig_analog: Add fuller Caller ID support.
- res_stasis.c: Add new type 'sdp_label' for bridge creation.
- app_queue: Preserve reason for realtime queues
- .github: Fix issues with cherry-pick-reminder
- indications: logging changes
- .github Ignore error when adding reviewrs to PR
- .github: Update field descriptions for AsteriskReleaser
- callerid: Allow specifying timezone for date/time.
- chan_pjsip: Allow topology/session refreshes in early media state
- chan_dahdi: Fix broken hidecallerid setting.
- .github: Change title of AsteriskReleaser job
- asterisk.c: Fix option warning for remote console.
- .github: Don't add cherry-pick reminder if it's already present
- .github: Fix quoting in PROpenedOrUpdated
- .github: Add cherry-pick reminder to new PRs
- configure: fix test code to match gethostbyname_r prototype.
- res_pjsip_pubsub.c: Use pjsip version for pending NOTIFY check. (#76)
- res_sorcery_memory_cache.c: Fix memory leak
- xml.c: Process XML Inclusions recursively.
- .github: Tweak improvement issue type language.
- .github: Tweak new feature language, and move feature requests elsewhere.
- .github: Fix staleness check to only run on certain labels.

User Notes:
----------------------------------------

- ### AMI: Add parking position parameter to Park action
  New ParkingSpace parameter has been added to AMI action Park.

- ### res_musiconhold: Add option to loop last file.
  The loop_last option in musiconhold.conf now
  allows the last file in the directory to be looped once reached.

- ### AMI: Add CoreShowChannelMap action.
  New AMI action CoreShowChannelMap has been added.

- ### sig_analog: Add fuller Caller ID support.
  Additional Caller ID properties are now supported on
  incoming calls to FXS stations, namely the
  redirecting reason and call qualifier.

- ### res_stasis.c: Add new type 'sdp_label' for bridge creation.
  When creating a bridge using the ARI the 'type' argument now
  accepts a new value 'sdp_label' which will configure the bridge to add
  labels for each stream in the SDP with the corresponding channel id.

- ### app_queue: Preserve reason for realtime queues
  Make paused reason in realtime queues persist an
  Asterisk restart. This was fixed for non-realtime
  queues in ASTERISK_25732.

Upgrade Notes:
----------------------------------------

- ### app_queue: Preserve reason for realtime queues
  Add a new column to the queue_member table:
  reason_paused VARCHAR(80) so the reason can be preserved.

Closed Issues:
----------------------------------------

  - #45: [bug]: Non-bundled PJSIP check for evsub pending NOTIFY check is insufficient/ineffective
  - #55: [bug]: res_sorcery_memory_cache: Memory leak when calling sorcery_memory_cache_open
  - #64: [bug]: app_voicemail_imap wrong behavior when losing IMAP connection
  - #65: [bug]: heap overflow by default at startup
  - #66: [improvement]: Fix preserve reason of pause when Asterisk is restared for realtime queues
  - #73: [new-feature]: pjsip: Allow topology/session refreshes in early media state
  - #87: [bug]: app_followme: Setting enable_callee_prompt=no breaks timeout
  - #89: [improvement]:  indications: logging changes
  - #91: [improvement]: Add parameter on ARI bridge create to allow it to send SDP labels
  - #94: [new-feature]: sig_analog: Add full Caller ID support for incoming calls
  - #98: [new-feature]: callerid: Allow timezone to be specified at runtime
  - #100: [bug]: sig_analog: hidecallerid setting is broken
  - #102: [bug]: Strange warning - 'T' option is not compatible with remote console mode and has no effect
.
  - #104: [improvement]: Add AMI action to get a list of connected channels
  - #108: [new-feature]: fair handling of calls in multi-queue scenarios
  - #110: [improvement]: utils - add lock timing information with DEBUG_THREADS
  - #116: [bug]: SIP Reason: "Call completed elsewhere" no longer propagating
  - #120: [bug]: chan_dahdi: Fix broken presentation for FXO caller ID
  - #122: [new-feature]: res_musiconhold: Add looplast option
  - #133: [bug]: unlock channel after moh state access
  - #136: [bug]: Makefile downloader does not follow redirects.
  - #145: [bug]: ABI issue with pjproject and pjsip_inv_session
  - #155: [bug]: GCC 13 is catching a few new trivial issues
  - #158: [bug]: test_stasis_endpoints.c: Unit test channel_messages is unstable
  - #174: [bug]: app_voicemail imap compile errors
  - #200: [bug]: Regression: In app.h an enum is used before its declaration.

                               [asterisk-announce] Asterisk Release 18.18.1

The Asterisk Development Team would like to announce security release
Asterisk 18.18.1.

The following security advisories were resolved in this release:
https://github.com/asterisk/asterisk/security/advisories/GHSA-4xjp-22g4-9fxm

Change Log for Release 18.18.1
========================================

Summary:
----------------------------------------

- apply_patches: Use globbing instead of file/sort.
- apply_patches: Sort patch list before applying
- pjsip: Upgrade bundled version to pjproject 2.13.1

User Notes:
----------------------------------------

- ### res_http_media_cache: Introduce options and customize
  The res_http_media_cache module now attempts to load
  configuration from the res_http_media_cache.conf file.
  The following options were added:
    * timeout_secs
    * user_agent
    * follow_location
    * max_redirects
    * protocols
    * redirect_protocols
    * dns_cache_timeout_secs

- ### format_sln: add .slin as supported file extension
  format_sln now recognizes '.slin' as a valid
  file extension in addition to the existing
  '.sln' and '.raw'.

- ### bridge_builtin_features: add beep via touch variable
  Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval)
  Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid
  interval in seconds will result in a periodic beep being
  played to the monitored channel upon MixMontior/Monitor
  feature start.
  If an interval less than 5 seconds is specified, the interval
  will default to 5 seconds.  If the value is set to an invalid
  interval, the default of 15 seconds will be used.

- ### app_senddtmf: Add SendFlash AMI action.
  The SendFlash AMI action now allows sending
  a hook flash event on a channel.

- ### res_mixmonitor: MixMonitorMute by MixMonitor ID
  It is now possible to specify the MixMonitorID when calling
  the manager action: MixMonitorMute.  This will allow an
  individual MixMonitor instance to be muted via ID.
  The MixMonitorID can be stored as a channel variable using
  the 'i' MixMonitor option and is returned upon creation if
  this option is used.
  As part of this change, if no MixMonitorID is specified in
  the manager action MixMonitorMute, Asterisk will set the mute
  flag on all MixMonitor audiohooks on the channel.  Previous
  behavior would set the flag on the first MixMonitor audiohook
  found.

- ### pbx_dundi: Add PJSIP support.
  DUNDi now supports chan_pjsip. Outgoing calls using
  PJSIP require the pjsip_outgoing_endpoint option
  to be set in dundi.conf.

- ### test.c: Fix counting of tests and add 2 new tests
  The "tests" attribute of the "testsuite" element in the
  output XML now reflects only the tests actually requested
  to be executed instead of all the tests registered.
  The "failures" attribute was added to the "testsuite"
  element.
  Also added two new unit tests that just pass and fail
  to be used for testing CI itself.

- ### cli: increase channel column width
  This change increases the display width on 'core show channels'
  amd 'core show channels verbose'
  For 'core show channels', the Channel name field is increased to
  64 characters and the Location name field is increased to 32
  characters.
  For 'core show channels verbose', the Channel name field is
  increased to 80 characters, the Context is increased to 24
  characters and the Extension is increased to 24 characters.

Upgrade Notes:
----------------------------------------

Closed Issues:
----------------------------------------

  - #193: [bug]: third-party/apply-patches doesn't sort the patch file list before applying

                               [asterisk-announce] Asterisk Release 18.18.0

The Asterisk Development Team would like to announce
the release of Asterisk 18.18.0.

This release resolves issues reported by the community
and would have not been possible without your participation.

Thank You!

Change Log for Release 18.18.0
========================================

Summary:
----------------------------------------

- Set up new ChangeLogs directory
- .github: Add AsteriskReleaser
- chan_pjsip: also return all codecs on empty re-INVITE for late offers
- cel: add local optimization begin event
- core: Cleanup gerrit and JIRA references. (#40)
- .github: Fix CherryPickTest to only run when it should
- .github: Fix reference to CHERRY_PICK_TESTING_IN_PROGRESS
- .github: Remove separate set labels step from new PR
- .github: Refactor CP progress and add new PR test progress
- res_pjsip: mediasec: Add Security-Client headers after 401
- .github: Add cherry-pick test progress labels
- LICENSE: Update link to trademark policy.
- chan_dahdi: Add dialmode option for FXS lines. (#36)
- .github: Update issue templates
- .github: Remove unnecessary parameter in CherryPickTest
- Initial GitHub PRs
- Initial GitHub Issue Templates
- pbx_dundi: Fix PJSIP endpoint configuration check.
- Revert "app_queue: periodic announcement configurable start time."
- pbx_dundi: Add PJSIP support.
- res_pjsip_stir_shaken: Fix JSON field ordering and disallowed TN characters.
- install_prereq: Add Linux Mint support.
- chan_pjsip: fix music on hold continues after INVITE with replaces
- voicemail.conf: Fix incorrect comment about #include.
- app_queue: Fix minor xmldoc duplication and vagueness.
- test.c: Fix counting of tests and add 2 new tests
- loader.c: Minor module key check simplification.
- ael: Regenerate lexers and parsers.
- res_calendar: output busy state as part of show calendar.
- bridge_builtin_features: add beep via touch variable
- res_mixmonitor: MixMonitorMute by MixMonitor ID
- format_sln: add .slin as supported file extension
- app_queue: periodic announcement configurable start time.
- func_json: Fix JSON parsing issues.
- app_dial: Fix DTMF not relayed to caller on unanswered calls.
- make_version: Strip svn stuff and suppress ref HEAD errors
- configure: fix detection of re-entrant resolver functions
- cli: increase channel column width
- res_agi: RECORD FILE plays 2 beeps.
- app_senddtmf: Add SendFlash AMI action.
- contrib: rc.archlinux.asterisk uses invalid redirect.
- main/iostream.c: fix build with libressl
- res_http_media_cache: Introduce options and customize

User Notes:
----------------------------------------

- ### cel: add local optimization begin event
  The new AST_CEL_LOCAL_OPTIMIZE_BEGIN can be used
  by itself or in conert with the existing
  AST_CEL_LOCAL_OPTIMIZE to book-end local channel optimizaion.

- ### chan_dahdi: Add dialmode option for FXS lines. (#36)
  A "dialmode" option has been added which allows
  specifying, on a per-channel basis, what methods of
  subscriber dialing (pulse and/or tone) are permitted.
  Additionally, this can be changed on a channel
  at any point during a call using the CHANNEL
  function.

- ### pbx_dundi: Add PJSIP support.
  DUNDi now supports chan_pjsip. Outgoing calls using
  PJSIP require the pjsip_outgoing_endpoint option
  to be set in dundi.conf.

- ### cli: increase channel column width
  This change increases the display width on 'core show channels'
  amd 'core show channels verbose'
  For 'core show channels', the Channel name field is increased to
  64 characters and the Location name field is increased to 32
  characters.
  For 'core show channels verbose', the Channel name field is
  increased to 80 characters, the Context is increased to 24
  characters and the Extension is increased to 24 characters.

- ### app_senddtmf: Add SendFlash AMI action.
  The SendFlash AMI action now allows sending
  a hook flash event on a channel.

- ### res_http_media_cache: Introduce options and customize
  The res_http_media_cache module now attempts to load
  configuration from the res_http_media_cache.conf file.
  The following options were added:
    * timeout_secs
    * user_agent
    * follow_location
    * max_redirects
    * protocols
    * redirect_protocols
    * dns_cache_timeout_secs

- ### test.c: Fix counting of tests and add 2 new tests
  The "tests" attribute of the "testsuite" element in the
  output XML now reflects only the tests actually requested
  to be executed instead of all the tests registered.
  The "failures" attribute was added to the "testsuite"
  element.
  Also added two new unit tests that just pass and fail
  to be used for testing CI itself.

- ### res_mixmonitor: MixMonitorMute by MixMonitor ID
  It is now possible to specify the MixMonitorID when calling
  the manager action: MixMonitorMute.  This will allow an
  individual MixMonitor instance to be muted via ID.
  The MixMonitorID can be stored as a channel variable using
  the 'i' MixMonitor option and is returned upon creation if
  this option is used.
  As part of this change, if no MixMonitorID is specified in
  the manager action MixMonitorMute, Asterisk will set the mute
  flag on all MixMonitor audiohooks on the channel.  Previous
  behavior would set the flag on the first MixMonitor audiohook
  found.

- ### bridge_builtin_features: add beep via touch variable
  Add optional touch variable : TOUCH_MIXMONITOR_BEEP(interval)
  Setting TOUCH_MIXMONITOR_BEEP/TOUCH_MONITOR_BEEP to a valid
  interval in seconds will result in a periodic beep being
  played to the monitored channel upon MixMontior/Monitor
  feature start.
  If an interval less than 5 seconds is specified, the interval
  will default to 5 seconds.  If the value is set to an invalid
  interval, the default of 15 seconds will be used.

- ### format_sln: add .slin as supported file extension
  format_sln now recognizes '.slin' as a valid
  file extension in addition to the existing
  '.sln' and '.raw'.

Upgrade Notes:
----------------------------------------

- ### cel: add local optimization begin event
  The existing AST_CEL_LOCAL_OPTIMIZE can continue
  to be used as-is and the AST_CEL_LOCAL_OPTIMIZE_BEGIN event
  can be ignored if desired.

Closed Issues:
----------------------------------------

  - #35: [New Feature]: chan_dahdi: Allow disabling pulse or tone dialing
  - #39: [Bug]: Remove .gitreview from repository.
  - #43: [Bug]: Link to trademark policy is no longer correct
  - #48: [bug]: res_pjsip: Mediasec requires different headers on 401 response
  - #52: [improvement]: Add local optimization begin cel event

### For more details, see:
https://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-18.18.0.md

                            [asterisk-announce] Asterisk 18.17.1 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.17.1.

The release of Asterisk 18.17.1 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:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30469 - res_pjsip_pubsub: Regression for
      subscription shutdowns
      (Reported by N A)
 * ASTERISK-30472 - pbx_ael: Literal usage for variables broken
      (Reported by isrl)

For a full list of changes in this release, please see the ChangeLog:
https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.17.1

Thank you for your continued support of Asterisk!

                            [asterisk-announce] Asterisk 18.17.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.17.0.

The release of Asterisk 18.17.0 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:

New Features made in this release:
-----------------------------------
 * ASTERISK-29810 - app_signal: Add channel signaling
      applications
      (Reported by N A)
 * ASTERISK-30262 - res_pjsip_session: Allow a context to be
      specified for overlap dialing
      (Reported by N A)
 * ASTERISK-30319 - Add BYE Reason support for SIP
      (Reported by Igor Goncharovsky)
 * ASTERISK-30180 - app_broadcast: Add a channel audio
      multicasting application
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-27830 - Asterisk crashes on Invalid UTF-8 string
      (Reported by AvayaXAsterisk)
 * ASTERISK-30354 - chan_iax2: Lack of formats prior to
      receiving voice frames causes jitterbuffer to stall
      (Reported by N A)
 * ASTERISK-30162 - when chan_iax is used to relay calls, no
      ringing indication is played
      (Reported by Jaco Kroon)
 * ASTERISK-30424 - pjproject_bundled: cross-compilation broken
      when ssl autodetected
      (Reported by Nick French)
 * ASTERISK-30388 - res_phoneprov: Stale SERVER variable when
      multi-homed
      (Reported by cmaj)
 * ASTERISK-30419 - pjsip: Crash when sending NOTIFY in PJSIP 2.13
      (Reported by Ross Beer)
 * ASTERISK-30417 - Copy/Paste error in UnpauseQueueMember
      (Reported by Sean Bright)
 * ASTERISK-30406 - pbx_ael: Global variables are not expanded.
      (Reported by Sean Bright)
 * ASTERISK-29604 - ari: Segfault with lots of calls
      (Reported by Danila Evgrafov)
 * ASTERISK-30391 - res_rtp_asterisk: Issue with transcoding
      g722 after MES changes
      (Reported by George Joseph)
 * ASTERISK-30345 - loader.c: Modules that decline to load
      cannot be reloaded
      (Reported by N A)
 * ASTERISK-30379 - http: fix NULL pointer dereference while
      enable_status on TLS-only
      (Reported by Boris P. Korzun)
 * ASTERISK-30375 - res_http_media_cache: Crash when URL has no
      path component.
      (Reported by Sean Bright)
 * ASTERISK-30351 - manager: Originate variables are not added
      when setvar used in manager.conf
      (Reported by Sebastian
      Gutierrez)
 * ASTERISK-30369 - res_pjsip: Websockets from same IP shut down
      when they shouldn't be
      (Reported by Joshua C. Colp)
 * ASTERISK-30367 - pbx: Fix outdated channel snapshots with pbx_exec
      (Reported by N A)
 * ASTERISK-28767 - chan_pjsip: Caller ID not used when checking
      for extension, callerid supplement executed too late
      (Reported by Oleg)
 * ASTERISK-30350 - res_pjsip_sdp_rtp: rtp_timeout_hold is not
      used when moh_passthrough has call on hold
      (Reported by Benjamin Keith Ford)
 * ASTERISK-30240 - app voicemail odbc build error with gcc 11.1
      (Reported by Michael Bradeen)
 * ASTERISK-30100 - res_pjsip: Path is ignored on INVITE to endpoint
      (Reported by Yury Kirsanov)
 * ASTERISK-30198 - Error `Too many open files` occurs after
      about ~8000 calls when using mixmonitor
      (Reported by Julien Alie)

Improvements made in this release:
-----------------------------------
 * ASTERISK-30411 - app_read: add option to include terminating
      digit on empty, terminated strings
      (Reported by Michael Bradeen)
 * ASTERISK-30405 - app_directory: Add 's' option to skip
      channel call
      (Reported by Michael Bradeen)
 * ASTERISK-30422 - app_senddtmf: add the option for senddtmf to answer
      (Reported by Michael Bradeen)
 * ASTERISK-30325 - Upgrade Asterisk to bundled pjproject 2.13
      (Reported by Stanislav Abramenkov)
 * ASTERISK-30404 - app_directory: Add reading directory
      configuration from custom file
      (Reported by Michael Bradeen)
 * ASTERISK-29913 - func_json: Adds multi-level and array
      parsing to JSON_DECODE
      (Reported by N A)
 * ASTERISK-30353 - func_frame_trace: Print text for text frames
      (Reported by N A)
 * ASTERISK-30361 - json.h: Add missing
      ast_json_object_real_get
      (Reported by N A)
 * ASTERISK-30280 - Create capability to assign a Media
      Experience Score to RTP streams
      (Reported by George Joseph)
 * ASTERISK-30332 - func_callerid: Warn if invalid redirecting
      reason provided
      (Reported by N A)

For a full list of changes in this release, please see the ChangeLog:
https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.17.0

Thank you for your continued support of Asterisk!

               [asterisk-announce] Asterisk 16.29.1, 18.15.1, 19.7.1, 20.0.1 Now Available

The Asterisk Development Team would like to announce the release of
Asterisk 16.29.1, 18.15.1, 19.7.1, and 20.0.1.

The release of Asterisk 16.29.1, 18.15.1, 19.7.1, and 20.0.1 resolves issues reported by the
community and would have not been possible without your participation.Thank you!

The following issue is resolved in this release:

Bugs fixed in this release:
-----------------------

[ASTERISK-30103 <https://issues.asterisk.org/jira/browse/ASTERISK-30103>]
chan_ooh323 vulnerability in calling/called party IE (Reported By: Michael
Bradeen)

[ASTERISK-30176 <https://issues.asterisk.org/jira/browse/ASTERISK-30176>]
GetConfig can read files outside of Asterisk (Reported By: shawty)

[ASTERISK-30244 <https://issues.asterisk.org/jira/browse/ASTERISK-30244>]
Occasional crash when TCP/TLS connection terminated and subscription
persistence is removed (Reported By: nappsoft)

[ASTERISK-30338 <https://issues.asterisk.org/jira/browse/ASTERISK-30338>]
Backport 2.13 security fixes from pjproject

                            [asterisk-announce] Asterisk 18.15.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.15.0.

The release of Asterisk 18.15.0 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:

New Features made in this release:
-----------------------------------
 * ASTERISK-30037 - Add test support to calling external processes
      (Reported by Philip Prindeville)
 * ASTERISK-30161 - locks: add AMI event for deadlock
      (Reported by N A)
 * ASTERISK-30211 - app_confbridge: Add end_marked_any option
      (Reported by N A)
 * ASTERISK-30186 - res_pjsip: Add support for reloading TLS
      certificate and key information
      (Reported by Joshua C.  Colp)
 * ASTERISK-29899 - features: Add advanced transfer initiation options
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30235 - res_crypto and tests:  Memory issues and and
      uninitialized variable error
      (Reported by George Joseph)
 * ASTERISK-30234 - res_geolocation: ...may be used
      uninitialized error in geoloc_config.c
      (Reported by George Joseph)
 * ASTERISK-30215 - Inbound SIP INVITE with Geo Location causing
      a Segmentation Fault
      (Reported by Dan Cropp)
 * ASTERISK-30135 - [res_musiconhold] Allows the moh only for
      the answered call
      (Reported by sungtae kim)
 * ASTERISK-26894 - pjsip should support tel uri scheme
      (Reported by Gergely D��ms��di)
 * ASTERISK-30210 - func_frame_trace: Channel masquerade
      triggers assertion
      (Reported by N A)
 * ASTERISK-30190 - res_geolocation:  GEOLOC_PROFILE isn't
      returning correct values on incoming channel
      (Reported by George Joseph)
 * ASTERISK-29185 - chan_pjsip: Endpoint: allow = all is broken.
      (Reported by Alexander Traud)
 * ASTERISK-30192 - res_tonedetect: fix typo for frametype
      (Reported by N A)
 * ASTERISK-29453 - alembic: incoming_call_offer_pref and
      outgoing_call_offer_pref missing in "ps_endpoints" table
      (Reported by Daniel Th��men)
 * ASTERISK-26826 - testsuite: Add support for Python 3
      (Reported by Joshua C. Colp)
 * ASTERISK-30167 - res_geolocation:  Refactor for issues found
      by users
      (Reported by George Joseph)
 * ASTERISK-28422 - Memory Leak in Confbridge menu
      (Reported by Ted G)
 * ASTERISK-29917 - ami: FilterList action doesn't exist
      (Reported by N A)
 * ASTERISK-30018 - app_meetme: MeetmeList AMI event not documented
      (Reported by Michael Cargile)
 * ASTERISK-30020 - ConfbridgeListRooms Event Not Documented
      (Reported by Michael Cargile)
 * ASTERISK-30151 - Documentation doesn't include info about
      "field", a 3rd required parameter.
      (Reported by Chris Young)

Improvements made in this release:
-----------------------------------
 * ASTERISK-30241 - res_pjsip_gelocation: Downgrade some NOTICE
      scope trace debugs to DEBUG level
      (Reported by N A)
 * ASTERISK-30178 - extend user_eq_phone behavior to local uri's
      (Reported by Michael Bradeen)
 * ASTERISK-30046 - Reimplement res/res_crypto.c internals with
      EVP_PKEY interface to Openssl API's
      (Reported by Philip Prindeville)
 * ASTERISK-30045 - Add test coverage to res/res_crypto.c functionality
      (Reported by Philip Prindeville)
 * ASTERISK-30185 - res_geolocation: Allow location parameters
      to be specified in profiles
      (Reported by George Joseph)
 * ASTERISK-30177 - res_geolocation:  Add option to suppress
      empty elements
      (Reported by George Joseph)
 * ASTERISK-30182 - res_geolocation: Add built-in profiles to
      use in fully dynamic configurations
      (Reported by George Joseph)
 * ASTERISK-29906 - [patch] update RLS to reflect the changes to
      the lists
      (Reported by Alexei Gradinari)
 * ASTERISK-30163 - general: fix minor formatting issues
      (Reported by N A)
 * ASTERISK-30164 - chan_iax2: Add missing option documentation
      (Reported by N A)
 * ASTERISK-30153 - logger: Improve log levels
      (Reported by N A)
 * ASTERISK-30160 - cdr.conf: Remove obsolete app_mysql reference
      (Reported by N A)
 * ASTERISK-30159 - general: Remove obsolete SVN references
      (Reported by N A)

                            [asterisk-announce] Asterisk 18.14.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.14.0.

The release of Asterisk 18.14.0 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:

Improvements made in this release:
-----------------------------------
 * ASTERISK-30128 - Create PJSIP interface module for Geolocation
      (Reported by George Joseph)
 * ASTERISK-30127 - Create core Geolocation capability for Asterisk
      (Reported by George Joseph)
 * ASTERISK-30089 - general: fix typos
      (Reported by N A)
 * ASTERISK-30050 - Upgrade Asterisk to bundled pjproject 2.12.1
      (Reported by Stanislav Abramenkov)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30167 - res_geolocation:  Refactor for issues found
      by users
      (Reported by George Joseph)
 * ASTERISK-29966 - pbx_variables: ast_str_strlen can be wrong
      (Reported by N A)
 * ASTERISK-29905 - OSX: bininstall launchd issue on
      cross-platfrom build
      (Reported by Sergey V. Lobanov)
 * ASTERISK-30137 - manager: Global disabled event filtered is incomplete
      (Reported by N A)
 * ASTERISK-30109 - res_pjsip: no contact-status AMI event on
      register of prune-on-boot contact that uses the same URI as
      before Asterisk restart
      (Reported by Michael Neuhauser)
 * ASTERISK-29991 - chan_dahdi, callerid: Caller ID does not
      honor presentation
      (Reported by N A)
 * ASTERISK-30126 - Spelling mistake in
      configs/samples/queues.conf.sample
      (Reported by Sam Banks)
 * ASTERISK-30029 - build: Git security vulnerability fix is sad
      with our accessing git as root during "make install"
      (Reported by Joshua C. Colp)
 * ASTERISK-29907 - res_pjsip, app_confbridge: Video call
      through ConfBridge with normal endpoints causes infinite
      loop/crash
      (Reported by N A)
 * ASTERISK-30138 - Compile failure in
      res_geolocation/geoloc_eprofile.c when optimization is enabled
      (Reported by George Joseph)
 * ASTERISK-30096 -  cel_odbc: Column type 9 (field
      'cdr:cel:eventtime') is unsupported at this time
      (Reported by Morvai Szabolcs)
 * ASTERISK-30083 - chan_iax2: Optional dependency on
      openssl/res_crypto is now mandatory
      (Reported by Dmitry Melekhov)
 * ASTERISK-30099 - test_aeap_transport: transport_connect_fail
      sporadically causes failure
      (Reported by Kevin Harwell)
 * ASTERISK-30123 - features: Update automixmon documentation to
      reflect reality
      (Reported by Trevor Peirce)
 * ASTERISK-30117 - pbx_lua: Remove compiler warnings
      (Reported by Boris P. Korzun)
 * ASTERISK-30101 - res_prometheus: Optional load
      res_pjsip_outbound_registration.so
      (Reported by Boris P.  Korzun)
 * ASTERISK-29989 - app_dial, chan_dahdi: DIALSTATUS is
      inconsistent for busy
      (Reported by N A)
 * ASTERISK-30001 - db: Removing nonexistent entries shows
      "Database entry removed"
      (Reported by N A)
 * ASTERISK-30115 - app_dial: Allow hook flashes to propogate on
      outbound dials
      (Reported by N A)
 * ASTERISK-30106 - res_calendar_icalendar: Microsoft online ICS
      calendars no longer work
      (Reported by N A)
 * ASTERISK-29822 - cli: Typing \? freezes the CLI permanently
      with remote console
      (Reported by N A)
 * ASTERISK-30072 - res_pjsip: allow TLS verification of
      wildcard cert-bearing servers
      (Reported by Kevin Harwell)
 * ASTERISK-30075 - say: Abort if channel hangs up during playback
      (Reported by N A)

New Features made in this release:
-----------------------------------
 * ASTERISK-30136 - db: Add AMI action to retrieve all keys
      beginning with a prefix
      (Reported by N A)
 * ASTERISK-30000 - chan_dahdi: Add POLARITY function
      (Reported by N A)
 * ASTERISK-30062 - cli: Add CLI command to execute a dialplan app
      (Reported by N A)
 * ASTERISK-29999 - pjsip: Get information from 200 OK INVITE
      reply headers
      (Reported by Jos�� Lopes)
 * ASTERISK-30061 - pbx: Add pbx helper application
      (Reported by N A)

                            [asterisk-announce] Asterisk 18.13.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.13.0.

The release of Asterisk 18.13.0 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:

Improvements made in this release:
-----------------------------------
 * ASTERISK-29906 - [patch] update RLS to reflect the changes to the lists
      (Reported by Alexei Gradinari)
 * ASTERISK-29891 - [patch] provide a display name for RLS subscriptions
      (Reported by Alexei Gradinari)
 * ASTERISK-30090 - xmldocs: Use example tags for examples
      (Reported by N A)
 * ASTERISK-30086 - res_parking: Warn when invalid parking space requested
      (Reported by N A)
 * ASTERISK-30058 - Evaluate dialplan functions and variables in agi exec
      (Reported by Shloime Rosenblum)
 * ASTERISK-30027 - ari: expose channel driver's unique id (i.e.
      Call-ID for chan_sip/chan_pjsip) in ARI channel resource
      (Reported by Moritz Fain)
 * ASTERISK-29845 - res_pjsip_outbound_registration: Show time
      remaining until registration lapses
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30097 - console: Recent documentation changes for
      connecting to remote console are inconsistent
      (Reported by Matthias Hensler)
 * ASTERISK-30043 - Wrong party is disconnected when
      hook-flashing on 3-way bridge
      (Reported by Josh Alberts)
 * ASTERISK-29603 - res_pjsip: UPDATE/re-INVITE not sent when
      "timers=always" is specified in pjsip.conf
      (Reported by Ray Crumrine)
 * ASTERISK-30092 - DateTime application: wrong inflection for
      one o'clock in German
      (Reported by Christof Efkemann)
 * ASTERISK-30064 - pbx: iax2 switch causes crash due to
      deadlock and assertion
      (Reported by N A)
 * ASTERISK-29981 - res_calendar: Asterisk crashes when
      starting, and will not run
      (Reported by N A)
 * ASTERISK-30039 - cli: Targeted debug on startup deadlocks and
      creates unstable system
      (Reported by N A)
 * ASTERISK-30051 - res_pjsip: No video after un-hold with
      moh_passthrough=yes
      (Reported by Maximilian Fridrich)
 * ASTERISK-24601 - [patch]Missing RFC4235 tags and attributes
      in PJSIP NOTIFY event: dialog  XML body
      (Reported by Marco Paland)
 * ASTERISK-30059 - menuselect: libxml include fails under Gentoo
      (Reported by waltermoeller)
 * ASTERISK-30060 - loader: format warnings in dev mode
      (Reported by N A)
 * ASTERISK-30065 - pjsip: Open Websocket connection is not
      reused for outgoing requests
      (Reported by LA)
 * ASTERISK-30042 - res_pjsip_transport_websocket: Registration
      over websocket returns a rewritten contact
      (Reported by Thomas Guebels)
 * ASTERISK-29993 - chan_dahdi: Operator control option borks
      both lines involved on callee disconnect
      (Reported by N A)
 * ASTERISK-30044 - GCC 12 issues
      (Reported by George Joseph)

New Features made in this release:
-----------------------------------
 * ASTERISK-30063 - app_voicemail: Add option to prevent
      deletion of messages
      (Reported by N A)
 * ASTERISK-29965 - res_pjsip_outbound_registration: Make max
      registration delay configurable
      (Reported by N A)
 * ASTERISK-30087 - res_parking: Add music on hold override option
      (Reported by N A)
 * ASTERISK-30036 - app_confbridge: Add CONFBRIDGE_CHANNELS function
      (Reported by N A)

Thank you for your continued support of Asterisk!

                            [asterisk-announce] Asterisk 18.12.1 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.12.1.

The release of Asterisk 18.12.1 resolves an issue reported by the
community and would have not been possible without your participation.

Thank you!

The following issue is resolved in this release:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30065 - pjsip: Open Websocket connection is not
      reused for outgoing requests
      (Reported by LA)

                            [asterisk-announce] Asterisk 18.12.0 Now Available

The Asterisk Development Team would like to announce the release of Asterisk 18.12.0.

The release of Asterisk 18.12.0 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:

Security bugs fixed in this release:
-----------------------------------
 * ASTERISK-29476 - res_stir_shaken: Blind SSRF vulnerabilities
      (Reported by Clint Ruoho)
 * ASTERISK-29838 - ${SQL_ESC()} not correctly escaping a terminating \
      (Reported by Leandro Dardini)
 * ASTERISK-29872 - res_stir_shaken: Resource exhaustion with large files
      (Reported by Benjamin Keith Ford)

New Features made in this release:
-----------------------------------
 * ASTERISK-29931 - Option to allow a user to not hear the join
      sound on enter but everyone else can
      (Reported by Michael Cargile)
 * ASTERISK-29968 - func_db: Add a function to return
      cardinality of keys at prefix
      (Reported by N A)
 * ASTERISK-29486 - Hint-like extension value lookup function
      without device state
      (Reported by N A)
 * ASTERISK-29941 - chan_pjsip: Add ability to send flash events
      (Reported by N A)
 * ASTERISK-29820 - cli: Add command to evaluate a function
      (Reported by N A)
 * ASTERISK-29876 - app_queue: Add music on hold option
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-29655 - res_pjsip_session: No video to caller if no
      camera available
      (Reported by Michael Auracher)
 * ASTERISK-29638 - res_pjsip_session: No video after early media
      (Reported by Michael Auracher)
 * ASTERISK-28518 - chan_dahdi: Caller ID FSK Erroneously Sent
      when Picking Up Dahdi Call On Hold
      (Reported by Josh Alberts)
 * ASTERISK-29990 - chan_dahdi: adding ring cadences is not
      idempotent on dahdi restart
      (Reported by N A)
 * ASTERISK-30007 - chan_iax2: Prevent crashes due to attempted
      encryption with missing secrets
      (Reported by N A)
 * ASTERISK-29728 - menuselect: Disabled by default modules that
      are enabled are always recompiled
      (Reported by N A)
 * ASTERISK-30002 - app_meetme: Don't erroneously set global
      variables when channel is NULL
      (Reported by N A)
 * ASTERISK-29994 - chan_dahdi: Round robin array size is too
      small for max number of groups
      (Reported by N A)
 * ASTERISK-22246 - Asterisk's "T" flag is ignored when used
      with "r" or "R" flags. (documentation bug)
      (Reported by Rusty Newton)
 * ASTERISK-26582 - Asterisk seems to ignore the "n" parameter
      for "disable console colorization"
      (Reported by Sebastian Gutierrez)
 * ASTERISK-29843 - Session timers get removed on UPDATE
      (Reported by Mark Petersen)
 * ASTERISK-29943 - file.c: seeking to negative file offset is
      not prevented
      (Reported by N A)
 * ASTERISK-29955 - chan_sip: SIP route header is missing on UPDATE
      (Reported by Mark Petersen)
 * ASTERISK-29842 - Do not change 180 Ringing to 183 Progress
      even if early_media already enabled
      (Reported by Mark Petersen)
 * ASTERISK-29948 - iostream: Infinite TCP timeout writing data
      (Reported by N A)
 * ASTERISK-29253 - Incorrect bridging on transfer
      (Reported by Yury Kirsanov)
 * ASTERISK-30006 - res_pjsip: UDP transport does not work when
      async_operations is greater than 1
      (Reported by Ross Beer)
 * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with
      functionality not enabled
      (Reported by Claude Diderich)
 * ASTERISK-30021 - ast_variable_list_replace_variable uses
      variable with new keyword
      (Reported by Jasper Hafkenscheid)
 * ASTERISK-30023 - cdr_adaptive_odbc: does not support DATETIME
      database columns
      (Reported by Gregory Massel)
 * ASTERISK-30015 - pjsip / WebRTC: Chrome creating large number
      of SDP attributes
      (Reported by Josh Hogan)
 * ASTERISK-26689 - res_pjsip_sdp_rtp: 183 Session in Progress.
      Disconnecting channel for lack of RTP activity
      (Reported by Dmitriy Serov)
 * ASTERISK-29929 - res_pjsip_sdp_rtp: Disconnecting channel for
      lack of RTP activity in one way sessions
      (Reported by Boris P. Korzun)
 * ASTERISK-29411 - Crash in pjsip_msg_find_hdr_by_name
      (Reported by LA)
 * ASTERISK-29535 - Segmentation fault in libasteriskpj.so.2
      (Reported by Daniel Bonazzi)
 * ASTERISK-26719 - pbx: Only up to 127 includes in a dialplan
      context (AST_PBX_MAX_STACK - 1)
      (Reported by Tzafrir Cohen)
 * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when
      wget isn't available
      (Reported by Stefan Ruijsenaars)
 * ASTERISK-29988 - REGRESSION: The build process is requiring
      xmllint or xmlstarlet ro be installed when it shouldn't
      (Reported by George Joseph)
 * ASTERISK-29895 - chan_iax2: Fix misaligned spacing in iax2
      show netstats printout
      (Reported by N A)
 * ASTERISK-29939 - agi: Fix xmldoc bug with set music
      (Reported by N A)
 * ASTERISK-28891 - documentation: AGICommand_set+music
      documentation arguments displayed incorreclty
      (Reported by Jonathan Harris)
 * ASTERISK-29048 - chan_iax2: "iax2 show registry" shows host
      for perceived
      (Reported by David Herselman)
 * ASTERISK-29674 - Adjust for 64bit time_t
      (Reported by Andre Heider)
 * ASTERISK-29961 - RLS: domain part of 'uri' list attribute
      mismatch with SUBSCRIBE request
      (Reported by Alexei Gradinari)
 * ASTERISK-29928 - logging messages truncated when using MUSL runtime
      (Reported by Philip Prindeville)
 * ASTERISK-29960 - ari: Retrieving stored recording can returns
      wrong file
      (Reported by Arix)
 * ASTERISK-29950 - SayNumber can handle '01' to '07', but not
      '08' or '09'
      (Reported by Jim Van Meggelen)

Improvements made in this release:
-----------------------------------
 * ASTERISK-24827 - Missing documentation for chan_dahdi dial
      string ring cadences
      (Reported by Scott Griepentrog)
 * ASTERISK-29940 - general: Add since tags to xmldocs
      (Reported by N A)
 * ASTERISK-29726 - Add Asterisk External Application Protocol
      (AEAP) implementation
      (Reported by Kevin Harwell)
 * ASTERISK-29951 - app_mf, app_sf: Return -1 on hangup
      (Reported by N A)
 * ASTERISK-29954 - app_meetme: Emit warning if conference not found
      (Reported by N A)
 * ASTERISK-29351 - Qualify pjproject 2.12 for Asterisk
      (Reported by George Joseph)
 * ASTERISK-29976 - Should Readme include information about
      install_prereq script?
      (Reported by Marcel Wagner)
 * ASTERISK-29970 - Use pkg-config to find libxml2 headers and libraries
      (Reported by Hugh McMaster)
 * ASTERISK-29980 - build: External binary modules don't use https
      (Reported by INVADE International Ltd.)
 * ASTERISK-25716 - Documentation: Document explanations and
      examples for possible values of DIALSTATUS
      (Reported by Rusty Newton)
 * ASTERISK-29967 - pbx_builtins: Add missing documentation
      (Reported by N A)

                            [asterisk-announce] Asterisk 18.11.3 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Tue Apr 26 12:09:50 CDT 2022

The Asterisk Development Team would like to announce the release of Asterisk 18.11.3.

The release of Asterisk 18.11.3 resolves an issue reported by the
community and would have not been possible without your participation.

Thank you!

The following issue is resolved in this release:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-30024 - Failed to sign STIR/SHAKEN payload with
      functionality not enabled
      (Reported by Claude Diderich)

      [asterisk-announce] Asterisk 16.25.2, 18.11.2, 19.3.2 and 16.8-cert14 Now Available (Security)

The Asterisk Development Team would like to announce security releases for
Asterisk 16, 18 and 19, and Certified Asterisk 16.8. The available releases are
released as versions 16.25.2, 18.11.2, 19.3.2 and 16.8-cert14.

The following security vulnerabilities were resolved in these versions:

* AST-2022-001: res_stir_shaken: resource exhaustion with large files
  When using STIR/SHAKEN, it���s possible to download files that are not
  certificates. These files could be much larger than what you would expect to
  download.

* AST-2022-002: res_stir_shaken: SSRF vulnerability with Identity header
  When using STIR/SHAKEN, it���s possible to send arbitrary requests like GET to
  interfaces such as localhost using the Identity header.

* AST-2022-003: func_odbc: Possible SQL Injection
  Some databases can use backslashes to escape certain characters, such as
  backticks. If input is provided to func_odbc which includes backslashes it is
  possible for func_odbc to construct a broken SQL query and the SQL query to
  fail.

                            [asterisk-announce] Asterisk 18.11.1 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Tue Mar 29 19:15:43 CDT 2022

The Asterisk Development Team would like to announce the release of Asterisk 18.11.1.

The release of Asterisk 18.11.1 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:

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-29986 - build: Asterisk 18.11.0 doesn't compile when
      wget isn't available
      (Reported by Stefan Ruijsenaars)
 * ASTERISK-29988 - REGRESSION: The build process is requiring
      xmllint or xmlstarlet ro be installed when it shouldn't
      (Reported by George Joseph)

                            [asterisk-announce] Asterisk 18.11.0 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Thu Mar 24 09:06:03 CDT 2022

The Asterisk Development Team would like to announce the release of Asterisk 18.11.0.

The release of Asterisk 18.11.0 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:

Security bugs fixed in this release:
-----------------------------------
 * ASTERISK-29945 - pjproject: Security fixes for things
      (Reported by Kevin Harwell)

New Features made in this release:
-----------------------------------
 * ASTERISK-29853 - ami: Allow events to be globally disabled
      (Reported by N A)
 * ASTERISK-29840 - func_channel: Add LASTCONTEXT and LASTEXTEN fields
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-29924 - res_config_pgsql: omit "unsupported column
      type 'text'" error
      (Reported by Boris P. Korzun)
 * ASTERISK-29923 - docs, LICENSE: pbx.digium.com no longer exists
      (Reported by N A)
 * ASTERISK-29904 - RLS: Batched Notifications stop working
      (Reported by Alexei Gradinari)
 * ASTERISK-29365 - taskprocessor: Can cause assert at shutdown
      (Reported by Joshua C. Colp)
 * ASTERISK-29873 - [patch] Queue Realtime load
      (Reported by Alexei Gradinari)
 * ASTERISK-18416 - [patch] Realtime queue agents unavailable
      via AMI before a call event.
      (Reported by kwk)
 * ASTERISK-27597 - AMI Queuestatus not working (with realtime queue)
      (Reported by cagdas kopuz)
 * ASTERISK-29871 - res_prometheus: Failure to load causes FRACKs
      (Reported by Mark Petersen)
 * ASTERISK-29886 - Asterisk AMI sends not-valid XML
      (Reported by Napadailo Yaroslav)

Improvements made in this release:
-----------------------------------
 * ASTERISK-29909 - app_queue: Add support for withdrawing a call
      (Reported by Kfir Itzhak)
 * ASTERISK-29906 - [patch] update RLS to reflect the changes to
      the lists
      (Reported by Alexei Gradinari)
 * ASTERISK-29353 - Qualify jansson 2.14 for asterisk
      (Reported by George Joseph)
 * ASTERISK-29897 - channels: Increase core debug levels for
      chatty debugs
      (Reported by N A)
 * ASTERISK-29896 - xmldocs: Add since tag
      (Reported by N A)
 * ASTERISK-29861 - asterisk.h: add macro for curl user agent
      (Reported by N A)
 * ASTERISK-29809 - curl, stir_shaken: refactor curl code
      (Reported by N A)
 * ASTERISK-29920 - app_voicemail: Warn if trying to manage
      nonexistent mailbox
      (Reported by N A)
 * ASTERISK-29925 - func_db: Warn about malformed key names
      (Reported by N A)
 * ASTERISK-29891 - [patch] provide a display name for RLS subscriptions
      (Reported by Alexei Gradinari)
 * ASTERISK-29866 - cli: add core dump information to core show settings
      (Reported by N A)
 * ASTERISK-29898 - documentation: Add default attributes to documentation
      (Reported by N A)
 * ASTERISK-29900 - app_mp3: Document and warn about https incompatibility
      (Reported by N A)
 * ASTERISK-29877 - app_mf: Allow reading a maximum number of digits
      (Reported by N A)

For a full list of changes in this release, please see the ChangeLog:
https://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-18.11.0

      [asterisk-announce] Asterisk 16.24.1, 18.10.1, 19.2.1 and 16.8-cert13 Now Available (Security)

   Asterisk Development Team asteriskteam at digium.com
   Fri Mar 4 14:01:59 CST 2022

The Asterisk Development Team would like to announce security releases for
Asterisk 16, 18 and 19, and Certified Asterisk 16.8. The available releases are
released as versions 16.24.1, 18.10.1, 19.2.1 and 16.8-cert13.

The following security vulnerabilities were resolved in these versions:

* AST-2022-004: pjproject: integer underflow on STUN message
  The header length on incoming STUN messages that contain an ERROR-CODE
  attribute is not properly checked. This can result in an integer underflow.
  Note, this requires ICE or WebRTC support to be in use with a malicious remote
  party.

* AST-2022-005: pjproject: undefined behavior after freeing a dialog set
  When acting as a UAC, and when placing an outgoing call to a target that then
  forks Asterisk may experience undefined behavior (crashes, hangs, etc���)
  after a dialog set is prematurely freed.

* AST-2022-006: pjproject: unconstrained malformed multipart SIP message
  If an incoming SIP message contains a malformed multi-part body an out of
  bounds read access may occur, which can result in undefined behavior. Note,
  it���s currently uncertain if there is any externally exploitable vector
  within Asterisk for this issue, but providing this as a security issue out of
  caution.

The security advisories are available at:

https://downloads.asterisk.org/pub/security/AST-2022-004.pdf
https://downloads.asterisk.org/pub/security/AST-2022-005.pdf
https://downloads.asterisk.org/pub/security/AST-2022-006.pdf

                            [asterisk-announce] Asterisk 18.10.0 Now Available

   Asterisk Development Team asteriskteam at digium.com
   Thu Feb 10 06:58:17 CST 2022

The Asterisk Development Team would like to announce the release of Asterisk 18.10.0.

The release of Asterisk 18.10.0 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:

New Features made in this release:
-----------------------------------
 * ASTERISK-29808 - cdr: allow disabling CDR by default
      (Reported by N A)
 * ASTERISK-29830 - ami: Add AMI event for Wink
      (Reported by N A)
 * ASTERISK-29802 - app_sf: Add full tech-agnostic SF support
      (Reported by N A)
 * ASTERISK-29759 - app_sendtext: Add ReceiveText application
      (Reported by N A)
 * ASTERISK-29706 - func_json: Add JSON parsing function
      (Reported by N A)

Bugs fixed in this release:
-----------------------------------
 * ASTERISK-29888 - res_pjsip_outbound_authenticator_digest:
      ABRT attempting to clean up auth_sess
      (Reported by George Joseph)
 * ASTERISK-29857 - res_tonedetect: fix logic errors in code
      (Reported by N A)
 * ASTERISK-29854 - func_frame_drop: fix buffer usage typo
      (Reported by N A)
 * ASTERISK-29869 - rtp sequence number can skip after DTMF
      under certain bridges
      (Reported by Torrey Searle)
 * ASTERISK-29817 - gethostbyname_r is misdetected on NetBSD and
      causes a build failure
      (Reported by Micha�� G��rny)
 * ASTERISK-29698 - Segfault if sorcery object_lifetime_maximum
      and qualify_frequency the same value
      (Reported by Alexei Gradinari)
 * ASTERISK-29851 - rdtsc is not enabled (stubbed out) on NetBSD
      (Reported by Micha�� G��rny)
 * ASTERISK-29852 - make_version uses GNU-ism that break
      git-svn-id parsing on NetBSD
      (Reported by Micha�� G��rny)
 * ASTERISK-29850 - ast_get_tid() not implemented for NetBSD
      (Reported by Micha�� G��rny)
 * ASTERISK-29818 - Build failure on NetBSD due to hmac function collision
      (Reported by Micha�� G��rny)
 * ASTERISK-29856 - res_rtp_asterisk: Invalid comparison creates
      unreachable code
      (Reported by N A)
 * ASTERISK-29867 - configure fails if libsrtp dev files are not installed
      (Reported by Sean Bright)
 * ASTERISK-29813 - res_pjsip_session doesn't support multipart
      message bodies
      (Reported by George Joseph)
 * ASTERISK-29858 - Regression:  Using external pjproject not
      working after "hack" commit
      (Reported by George Joseph)
 * ASTERISK-29859 - VoiceMailMain() fails when encountering
      non-numeric CALLERID(num)
      (Reported by Mark Murawski)
 * ASTERISK-29847 - pbx_variables: ASTSBINDIR is missing
      (Reported by N A)
 * ASTERISK-29824 - It's hard to make changes to bundled pjproject
      (Reported by George Joseph)
 * ASTERISK-29695 - SAY.CONF wrong logic when converting 24hour
      time to say 12 hour am/pm
      (Reported by Vincent Dubois)
 * ASTERISK-29664 - PJSIP processing token with % incorrectly
      (Reported by Dan Cropp)
 * ASTERISK-29827 - Support for Nordic language syntax in Queues
      (Reported by Mark Petersen)
 * ASTERISK-29515 - app_queue: QueueSummary and QueueStatus
      events don't exist in documentation
      (Reported by Luke Escude)
 * ASTERISK-29746 - tcptls.c: TCP client connect fails due to interrupt
      (Reported by Kevin Harwell)
 * ASTERISK-29806 - app_queue: extension state incorrect
      (Reported by Steve Davies)
 * ASTERISK-29816 - SAY_DTMF_INTERRUPT channel variable is not honored
      (Reported by Sean Bright)
 * ASTERISK-28863 - The ast_rtp_codecs_payloads functions don't
      preserve order
      (Reported by George Joseph)
 * ASTERISK-29320 - res_pjsip_sdp_rtp: Codec preference order of
      remote is not correct on unhold
      (Reported by Ross Beer)
 * ASTERISK-29821 - Deadlock in bridge_channel_internal_join()
      on local channels.
      (Reported by Krzysztof Trempala)
 * ASTERISK-29722 - test_timezone_watch breaks during DST to ST transition
      (Reported by Josh Soref)
 * ASTERISK-29804 - bundled_pjproject: sip_inv is missing
      multipart support in some cases
      (Reported by George Joseph)
 * ASTERISK-29794 - ast_coredumper does not delete results when
      requested and a specific output dir is set
      (Reported by Frederic Van Espen)
 * ASTERISK-29803 - pbx_variables: cp4 variables is used uninitialized
      (Reported by N A)
 * ASTERISK-29766 - pbx_variables: MSet truncates sets after 24 variables
      (Reported by N A)
 * ASTERISK-29772 - chan_sip: ${CHANNEL(ruri)} in Dial/Queue
      b(test,s,1) cause a coredump
      (Reported by Mark Petersen)
 * ASTERISK-29790 - xmldoc: Dump invalid to XML DTD: XSLT
      (Reported by Alexander Traud)
 * ASTERISK-29791 - xmldoc: Dump invalid to XML DTD: ACO Matchfield
      (Reported by Alexander Traud)
 * ASTERISK-26991 - documentation: Doxygen site is no longer
      being updated
      (Reported by Joshua C. Colp)
 * ASTERISK-20259 - [patch] Update Doxygen Configuration for
      make progdocs
      (Reported by Andrew Latham)
 * ASTERISK-29785 - res_pjsip_sdp_rtp: Warns on every offered
      crypto suite
      (Reported by Alexander Traud)
 * ASTERISK-27406 - Infinite loop when out of ports and rtpstart
      value is odd
      (Reported by Thomas Guebels)
 * ASTERISK-28053 - chan_pjsip: Wrong or missing Q.850 reason in CANCEL
      (Reported by Simone Lazzaris)
 * ASTERISK-29761 - res: Fix for Doxygen
      (Reported by Alexander Traud)
 * ASTERISK-29763 - main: Fix for Doxygen
      (Reported by Alexander Traud)

Improvements made in this release:
-----------------------------------
 * ASTERISK-29832 - Enable pickup on channel after having
      received 183 Progress
      (Reported by Mark Petersen)
 * ASTERISK-28890 - res_pjsip_sdp_rtp: Keepalive not supported
      for video streams
      (Reported by Luke Escude)
 * ASTERISK-29831 - Queue don't play "thank-you" when here is no
      hold time announcements
      (Reported by Mark Petersen)
 * ASTERISK-29855 - frame.h: fix CNG documentation typo
      (Reported by N A)
 * ASTERISK-29848 - documentation: Document special system and
      channel variables
      (Reported by N A)
 * ASTERISK-29819 - utils.c: Remove all usages of
      ast_gethostbyname()
      (Reported by Sean Bright)
 * ASTERISK-29815 - dsp: Define magic number as macro
      (Reported by N A)
 * ASTERISK-29807 - cli: add module refresh command
      (Reported by N A)
 * ASTERISK-29829 - app_mp3: Throw warning if attempting to play
      a nonexistent stream
      (Reported by N A)
 * ASTERISK-24427 - Documentation is missing for a few AMI
      Events - Including CDR and events triggered after the
      QueueStatus action
      (Reported by Dafi Ni)
 * ASTERISK-29795 - DIALEDPEERNUMBER not set on destination
      channel for Queue calls
      (Reported by Mark Petersen)
 * ASTERISK-29801 - app.c: Throw warnings for nonexistent options
      (Reported by N A)
 * ASTERISK-29797 - Support for Danish language syntax in VM
      (Reported by Mark Petersen)
 * ASTERISK-29800 - strings: Fix misusage in comment examples
      (Reported by N A)
 * ASTERISK-29758 - configs: Minor updates to sample configs
      (Reported by N A)
 * ASTERISK-29745 - pbx: Add public API for more elegant
      variable substitution with extensions
      (Reported by N A)
 * ASTERISK-29729 - Incompatibility with newer spandsp releases (3.0.0+)
      (Reported by Dustin Marquess)


To generate a diff of this commit:
cvs rdiff -u -r1.155 -r1.156 pkgsrc/comms/asterisk18/Makefile
cvs rdiff -u -r1.29 -r1.30 pkgsrc/comms/asterisk18/PLIST
cvs rdiff -u -r1.73 -r1.74 pkgsrc/comms/asterisk18/distinfo
cvs rdiff -u -r1.15 -r1.16 pkgsrc/comms/asterisk18/options.mk
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/comms/asterisk18/patches/patch-build__tools_make__xml__documentation \
    pkgsrc/comms/asterisk18/patches/patch-channels_chan__oss.c \
    pkgsrc/comms/asterisk18/patches/patch-main_config.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__celt.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__h263.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__ilbc.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__opus.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__silk.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren14.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren7.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__vp8.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip__diversion.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip_pjsip__configuration.c \
    pkgsrc/comms/asterisk18/patches/patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch
cvs rdiff -u -r1.3 -r1.4 pkgsrc/comms/asterisk18/patches/patch-configure
cvs rdiff -u -r1.2 -r0 \
    pkgsrc/comms/asterisk18/patches/patch-include_asterisk_sha1.h \
    pkgsrc/comms/asterisk18/patches/patch-res_res__calendar__caldav.c \
    pkgsrc/comms/asterisk18/patches/patch-res_res__calendar__icalendar.c
cvs rdiff -u -r1.2 -r1.3 pkgsrc/comms/asterisk18/patches/patch-main_manager.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/comms/asterisk18/Makefile
diff -u pkgsrc/comms/asterisk18/Makefile:1.155 pkgsrc/comms/asterisk18/Makefile:1.156
--- pkgsrc/comms/asterisk18/Makefile:1.155      Tue Nov 14 18:45:28 2023
+++ pkgsrc/comms/asterisk18/Makefile    Mon Feb 19 05:59:51 2024
@@ -1,13 +1,12 @@
-# $NetBSD: Makefile,v 1.155 2023/11/14 18:45:28 nia Exp $
+# $NetBSD: Makefile,v 1.156 2024/02/19 05:59:51 jnemeth Exp $
 #
 # NOTE: when updating this package, there are two places that sound
 #       tarballs need to be checked; look in ${WRKSRC}/sounds/Makefile
 #       to find out the current sound file versions
 #       Also look in ${WRKSRC}/third-party/versions.mak for pjproject
 
-DISTNAME=      asterisk-18.9.0
+DISTNAME=      asterisk-18.21.0
 #PKGREVISION=  24
-PKGREVISION=   14
 CATEGORIES=    comms net audio
 MASTER_SITES=  http://downloads.asterisk.org/pub/telephony/asterisk/
 MASTER_SITES+= http://downloads.asterisk.org/pub/telephony/asterisk/old-releases/
@@ -161,7 +160,7 @@ CONFIGURE_ARGS+=    --without-unbound
 DISTFILES+=    asterisk-extra-sounds-en-gsm-1.5.2.tar.gz
 
 # pjproject
-PJPROJ_VERSION=        2.10
+PJPROJ_VERSION=        2.13.1
 SITES.pjproject-${PJPROJ_VERSION}.tar.bz2= \
        -https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/${PJPROJ_VERSION}/pjproject-${PJPROJ_VERSION}.tar.bz2
 SITES.pjproject-${PJPROJ_VERSION}.md5= \
@@ -180,7 +179,7 @@ SUBST_FILES.configs+=       configs/samples/mu
 SUBST_FILES.configs+=  configs/samples/osp.conf.sample
 SUBST_FILES.configs+=  configs/samples/phoneprov.conf.sample
 SUBST_FILES.configs+=  configs/samples/res_config_sqlite.conf.sample
-SUBST_FILES.configs+=  configs/samples/sla.conf.sample
+#SUBST_FILES.configs+= configs/samples/sla.conf.sample
 SUBST_SED.configs+=    -e 's|doc/|${PREFIX}/share/doc/${PKGBASE}/|'
 SUBST_SED.configs+=    -e 's|/etc/asterisk|${ASTETCDIR}|'
 SUBST_SED.configs+=    -e 's|/var/lib/asterisk|${ASTVARLIBDIR}|'
@@ -201,12 +200,12 @@ SUBST_STAGE.pktinfo=      post-configure
 SUBST_FILES.pktinfo=   include/asterisk/autoconfig.h
 SUBST_SED.pktinfo=     -e "s|^\#define HAVE_PKTINFO 1|\#undef HAVE_PKTINFO|"
 
-# XXX gross hack, gethostbyname_r on NETBSD is for internal use only
-SUBST_CLASSES.NetBSD+=         gethostbyname_r
-SUBST_STAGE.gethostbyname_r=   post-configure
-SUBST_FILES.gethostbyname_r=   include/asterisk/autoconfig.h
-SUBST_SED.gethostbyname_r=     -e "s|^\#define HAVE_GETHOSTBYNAME_R_5 1|\#undef HAVE_GETHOSTBYNAME_R_5|"
-SUBST_SED.gethostbyname_r+=    -e "s|^\#define HAVE_GETHOSTBYNAME_R_6 1|\#undef HAVE_GETHOSTBYNAME_R_6|"
+## XXX gross hack, gethostbyname_r on NETBSD is for internal use only
+#SUBST_CLASSES.NetBSD+=                gethostbyname_r
+#SUBST_STAGE.gethostbyname_r=  post-configure
+#SUBST_FILES.gethostbyname_r=  include/asterisk/autoconfig.h
+#SUBST_SED.gethostbyname_r=    -e "s|^\#define HAVE_GETHOSTBYNAME_R_5 1|\#undef HAVE_GETHOSTBYNAME_R_5|"
+#SUBST_SED.gethostbyname_r+=   -e "s|^\#define HAVE_GETHOSTBYNAME_R_6 1|\#undef HAVE_GETHOSTBYNAME_R_6|"
 
 RCD_SCRIPTS=           asterisk
 OWN_DIRS_PERMS+=       ${ASTDBDIR} ${ASTERISK_USER} ${ASTERISK_GROUP} 0755
@@ -237,8 +236,8 @@ CONF_FILES_PERMS+=  ${ASTEXAMPLEDIR}/${f:
 
 .if !empty(PKG_OPTIONS:Masterisk-config)
 # if we put all the files in $CONF_FILES, the message is _way_ too long.
-.  for f in acl.conf adsi.conf agents.conf alarmreceiver.conf alsa.conf        \
-       amd.conf app_mysql.conf app_skel.conf ari.conf                  \
+.  for f in acl.conf adsi.conf aeap.conf agents.conf alarmreceiver.conf        \
+       alsa.conf amd.conf app_mysql.conf app_skel.conf ari.conf        \
        ast_debug_tools.conf asterisk.adsi calendar.conf ccss.conf      \
        cdr.conf cdr_adaptive_odbc.conf cdr_custom.conf                 \
        cdr_manager.conf cdr_mysql.conf cdr_odbc.conf cdr_pgsql.conf    \
@@ -250,18 +249,20 @@ CONF_FILES_PERMS+=        ${ASTEXAMPLEDIR}/${f:
        dsp.conf dundi.conf enum.conf extconfig.conf extensions.ael     \
        extensions.conf extensions.lua  extensions_minivm.conf          \
        features.conf festival.conf followme.conf func_odbc.conf        \
-       hep.conf http.conf iax.conf iaxprov.conf indications.conf       \
-       logger.conf manager.conf meetme.conf mgcp.conf minivm.conf      \
-       misdn.conf modules.conf motif.conf musiconhold.conf muted.conf  \
-       ooh323.conf osp.conf oss.conf phone.conf phoneprov.conf         \
-       pjproject.conf pjsip.conf pjsip_notify.conf pjsip_wizard.conf   \
-       queuerules.conf queues.conf res_config_mysql.conf               \
+       geolocation.conf hep.conf http.conf iax.conf iaxprov.conf       \
+       indications.conf logger.conf manager.conf meetme.conf mgcp.conf \
+       minivm.conf misdn.conf modules.conf motif.conf musiconhold.conf \
+       muted.conf ooh323.conf osp.conf oss.conf phone.conf             \
+       phoneprov.conf pjproject.conf pjsip.conf pjsip_notify.conf      \
+       pjsip_wizard.conf queuerules.conf queues.conf                   \
+       res_config_mysql.conf res_config_odbc.conf                      \
        res_config_sqlite.conf res_config_sqlite3.conf                  \
-       res_corosync.conf res_curl.conf  res_fax.conf res_ldap.conf     \
-       res_odbc.conf res_parking.conf res_pgsql.conf res_pktccops.conf \
-       res_snmp.conf res_stun_monitor.conf resolver_unbound.conf       \
-       rtp.conf say.conf sip.conf sip_notify.conf skinny.conf sla.conf \
-       smdi.conf sorcery.conf ss7.timers stasis.conf statsd.conf       \
+       res_corosync.conf res_curl.conf res_fax.conf                    \
+       res_http_media_cache.conf res_ldap.conf res_odbc.conf           \
+       res_parking.conf res_pgsql.conf res_pktccops.conf res_snmp.conf \
+       res_stun_monitor.conf resolver_unbound.conf rtp.conf say.conf   \
+       sip.conf sip_notify.conf skinny.conf sla.conf smdi.conf         \
+       sorcery.conf ss7.timers stasis.conf statsd.conf                 \
        stir_shaken.conf telcordia-1.adsi udptl.conf unistim.conf       \
        users.conf voicemail.conf vpb.conf xmpp.conf
 CONF_FILES_PERMS+=             ${ASTEXAMPLEDIR}/${f:Q} ${PKG_SYSCONFDIR}/${f:Q} ${ASTERISK_USER} ${ASTERISK_GROUP} 0644
@@ -281,15 +282,22 @@ post-install:
        ${TAR} xzf ${WRKSRC}/sounds/asterisk-moh-opsound-wav-2.03.tar.gz -C ${DESTDIR}${ASTDATADIR}/moh
        ${TAR} xzf ${DISTDIR}/${DIST_SUBDIR}/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz -C ${DESTDIR}${ASTDATADIR}/sounds/en
        ${INSTALL_DATA} ${WRKSRC}/BUGS ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
-       ${INSTALL_DATA} ${WRKSRC}/CHANGES ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/COPYING ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/CREDITS ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
-       ${INSTALL_DATA} ${WRKSRC}/ChangeLog ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/LICENSE ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
-       ${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/README-SERIOUSLY.bestpractices.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
-       ${INSTALL_DATA} ${WRKSRC}/UPGRADE.txt ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/SECURITY.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/Zaptel-to-DAHDI.txt ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.18.0.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.18.1.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.19.0.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.20.0.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.20.1.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.20.2.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/ChangeLog-18.21.0.md ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/historical/CHANGES ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLogs/historical/ChangeLog ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/doc/IAX2-security.pdf ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/doc/IAX2-security.txt ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
        ${INSTALL_DATA} ${WRKSRC}/doc/README.txt ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}
@@ -300,6 +308,7 @@ LDFLAGS+= -L${PREFIX}/lib
 .endif
 
 .include "../../databases/sqlite3/buildlink3.mk"
+.include "../../devel/SDL/buildlink3.mk"
 .include "../../devel/editline/buildlink3.mk"
 .include "../../devel/libuuid/buildlink3.mk"
 .include "../../devel/zlib/buildlink3.mk"

Index: pkgsrc/comms/asterisk18/PLIST
diff -u pkgsrc/comms/asterisk18/PLIST:1.29 pkgsrc/comms/asterisk18/PLIST:1.30
--- pkgsrc/comms/asterisk18/PLIST:1.29  Sat Oct  9 07:52:15 2021
+++ pkgsrc/comms/asterisk18/PLIST       Mon Feb 19 05:59:51 2024
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.29 2021/10/09 07:52:15 jnemeth Exp $
+@comment $NetBSD: PLIST,v 1.30 2024/02/19 05:59:51 jnemeth Exp $
 lib/asterisk/libasteriskpj.so
 lib/asterisk/libasteriskpj.so.2
 lib/asterisk/modules/app_adsiprog.so
@@ -11,6 +11,7 @@ lib/asterisk/modules/app_authenticate.so
 lib/asterisk/modules/app_blind_transfer.so
 lib/asterisk/modules/app_bridgeaddchan.so
 lib/asterisk/modules/app_bridgewait.so
+lib/asterisk/modules/app_broadcast.so
 lib/asterisk/modules/app_cdr.so
 lib/asterisk/modules/app_celgenuserevent.so
 lib/asterisk/modules/app_chanisavail.so
@@ -34,6 +35,7 @@ lib/asterisk/modules/app_followme.so
 lib/asterisk/modules/app_forkcdr.so
 lib/asterisk/modules/app_getcpeid.so
 lib/asterisk/modules/app_ices.so
+lib/asterisk/modules/app_if.so
 lib/asterisk/modules/app_image.so
 lib/asterisk/modules/app_mf.so
 lib/asterisk/modules/app_milliwatt.so
@@ -55,6 +57,8 @@ lib/asterisk/modules/app_reload.so
 lib/asterisk/modules/app_sayunixtime.so
 lib/asterisk/modules/app_senddtmf.so
 lib/asterisk/modules/app_sendtext.so
+lib/asterisk/modules/app_sf.so
+lib/asterisk/modules/app_signal.so
 lib/asterisk/modules/app_sms.so
 lib/asterisk/modules/app_softhangup.so
 lib/asterisk/modules/app_speech_utils.so
@@ -147,6 +151,8 @@ lib/asterisk/modules/func_dialgroup.so
 lib/asterisk/modules/func_dialplan.so
 lib/asterisk/modules/func_enum.so
 lib/asterisk/modules/func_env.so
+lib/asterisk/modules/func_evalexten.so
+lib/asterisk/modules/func_export.so
 lib/asterisk/modules/func_extstate.so
 lib/asterisk/modules/func_frame_drop.so
 lib/asterisk/modules/func_frame_trace.so
@@ -156,6 +162,7 @@ lib/asterisk/modules/func_hangupcause.so
 lib/asterisk/modules/func_holdintercept.so
 lib/asterisk/modules/func_iconv.so
 lib/asterisk/modules/func_jitterbuffer.so
+lib/asterisk/modules/func_json.so
 lib/asterisk/modules/func_lock.so
 lib/asterisk/modules/func_logic.so
 lib/asterisk/modules/func_math.so
@@ -193,6 +200,7 @@ lib/asterisk/modules/pbx_loopback.so
 lib/asterisk/modules/pbx_realtime.so
 lib/asterisk/modules/pbx_spool.so
 lib/asterisk/modules/res_adsi.so
+lib/asterisk/modules/res_aeap.so
 lib/asterisk/modules/res_ael_share.so
 lib/asterisk/modules/res_agi.so
 lib/asterisk/modules/res_ari.so
@@ -250,6 +258,7 @@ lib/asterisk/modules/res_phoneprov.so
 lib/asterisk/modules/res_pjproject.so
 lib/asterisk/modules/res_pjsip.so
 lib/asterisk/modules/res_pjsip_acl.so
+lib/asterisk/modules/res_pjsip_aoc.so
 lib/asterisk/modules/res_pjsip_authenticator_digest.so
 lib/asterisk/modules/res_pjsip_caller_id.so
 lib/asterisk/modules/res_pjsip_config_wizard.so
@@ -284,6 +293,7 @@ lib/asterisk/modules/res_pjsip_pubsub.so
 lib/asterisk/modules/res_pjsip_refer.so
 lib/asterisk/modules/res_pjsip_registrar.so
 lib/asterisk/modules/res_pjsip_rfc3326.so
+lib/asterisk/modules/res_pjsip_rfc3329.so
 lib/asterisk/modules/res_pjsip_sdp_rtp.so
 lib/asterisk/modules/res_pjsip_send_to_voicemail.so
 lib/asterisk/modules/res_pjsip_session.so
@@ -292,7 +302,6 @@ lib/asterisk/modules/res_pjsip_stir_shak
 lib/asterisk/modules/res_pjsip_t38.so
 lib/asterisk/modules/res_pjsip_transport_websocket.so
 lib/asterisk/modules/res_pjsip_xpidf_body_generator.so
-${PLIST.mgcp}lib/asterisk/modules/res_pktccops.so
 lib/asterisk/modules/res_prometheus.so
 lib/asterisk/modules/res_realtime.so
 ${PLIST.unbound}lib/asterisk/modules/res_resolver_unbound.so
@@ -307,6 +316,7 @@ lib/asterisk/modules/res_sorcery_memory.
 lib/asterisk/modules/res_sorcery_memory_cache.so
 lib/asterisk/modules/res_sorcery_realtime.so
 lib/asterisk/modules/res_speech.so
+lib/asterisk/modules/res_speech_aeap.so
 ${PLIST.srtp}lib/asterisk/modules/res_srtp.so
 lib/asterisk/modules/res_stasis.so
 lib/asterisk/modules/res_stasis_answer.so
@@ -2316,16 +2326,24 @@ share/doc/asterisk/CHANGES
 share/doc/asterisk/COPYING
 share/doc/asterisk/CREDITS
 share/doc/asterisk/ChangeLog
+share/doc/asterisk/ChangeLog-18.18.0.md
+share/doc/asterisk/ChangeLog-18.18.1.md
+share/doc/asterisk/ChangeLog-18.19.0.md
+share/doc/asterisk/ChangeLog-18.20.0.md
+share/doc/asterisk/ChangeLog-18.20.1.md
+share/doc/asterisk/ChangeLog-18.20.2.md
+share/doc/asterisk/ChangeLog-18.21.0.md
 share/doc/asterisk/IAX2-security.pdf
 share/doc/asterisk/IAX2-security.txt
 share/doc/asterisk/LICENSE
 share/doc/asterisk/README-SERIOUSLY.bestpractices.md
 share/doc/asterisk/README.md
 share/doc/asterisk/README.txt
-share/doc/asterisk/UPGRADE.txt
+share/doc/asterisk/SECURITY.md
 share/doc/asterisk/Zaptel-to-DAHDI.txt
 share/examples/asterisk/acl.conf
 share/examples/asterisk/adsi.conf
+share/examples/asterisk/aeap.conf
 share/examples/asterisk/agents.conf
 share/examples/asterisk/alarmreceiver.conf
 share/examples/asterisk/alsa.conf
@@ -2379,6 +2397,7 @@ share/examples/asterisk/features.conf
 share/examples/asterisk/festival.conf
 share/examples/asterisk/followme.conf
 share/examples/asterisk/func_odbc.conf
+share/examples/asterisk/geolocation.conf
 share/examples/asterisk/hep.conf
 share/examples/asterisk/http.conf
 share/examples/asterisk/iax.conf
@@ -2407,11 +2426,13 @@ share/examples/asterisk/prometheus.conf
 share/examples/asterisk/queuerules.conf
 share/examples/asterisk/queues.conf
 share/examples/asterisk/res_config_mysql.conf
+share/examples/asterisk/res_config_odbc.conf
 share/examples/asterisk/res_config_sqlite.conf
 share/examples/asterisk/res_config_sqlite3.conf
 share/examples/asterisk/res_corosync.conf
 share/examples/asterisk/res_curl.conf
 share/examples/asterisk/res_fax.conf
+share/examples/asterisk/res_http_media_cache.conf
 share/examples/asterisk/res_ldap.conf
 share/examples/asterisk/res_odbc.conf
 share/examples/asterisk/res_parking.conf

Index: pkgsrc/comms/asterisk18/distinfo
diff -u pkgsrc/comms/asterisk18/distinfo:1.73 pkgsrc/comms/asterisk18/distinfo:1.74
--- pkgsrc/comms/asterisk18/distinfo:1.73       Fri Dec 17 08:07:06 2021
+++ pkgsrc/comms/asterisk18/distinfo    Mon Feb 19 05:59:51 2024
@@ -1,17 +1,17 @@
-$NetBSD: distinfo,v 1.73 2021/12/17 08:07:06 jnemeth Exp $
+$NetBSD: distinfo,v 1.74 2024/02/19 05:59:51 jnemeth Exp $
 
-BLAKE2s (asterisk-18.9.0/asterisk-18.9.0.tar.gz) = 2b4d261411510ddc0a134b811e1d62753a9517da1024a3dc07839d4b21f25595
-SHA512 (asterisk-18.9.0/asterisk-18.9.0.tar.gz) = 514f806ac93c2975101133e897c20e4483ad97141b125de5b6fcb96b8acd3248bd0d4fc638381fe9e9be7b504a35ddae24d8437c33ed10c88a37565577af52b6
-Size (asterisk-18.9.0/asterisk-18.9.0.tar.gz) = 28045278 bytes
-BLAKE2s (asterisk-18.9.0/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz) = 3f7e5fe212d7e7cdca14c52527a2552311ab7762c3f1464b09ddedc7c66aebde
-SHA512 (asterisk-18.9.0/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz) = 3f2f7bf3d5bce3544bc013f913c352f0204a3ce96239987403eb9dce8bc87e64a61d437762323a422a87b2fad1f3bf3e7a5f3d0d340f912a1b1dbfea9479d41d
-Size (asterisk-18.9.0/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz) = 4253587 bytes
-BLAKE2s (asterisk-18.9.0/pjproject-2.10.md5) = 6739f51daf24d0567304f773bd49648c1be3a7a4a33c0f3353279fb349168e7e
-SHA512 (asterisk-18.9.0/pjproject-2.10.md5) = bd24048c9c2fdaf06468e44bceca92bd02848d759ef98285d20b50174f865b1aec2928f1ce6c092862397ba83dd1a74da4a7e479eca881df1e9f9d1c211a7054
-Size (asterisk-18.9.0/pjproject-2.10.md5) = 110 bytes
-BLAKE2s (asterisk-18.9.0/pjproject-2.10.tar.bz2) = fac6400fa94cde09a848314b754062364c021e8c13d3fe28493634d4415959f7
-SHA512 (asterisk-18.9.0/pjproject-2.10.tar.bz2) = fe29edccc63a8e72323e1b6f955a8c3475e26aba9cb8f5125546da4409fecc19a09a7950eee6b8e4a3c908943bc043d95130f878ad52958c5eccc617e3bcfb4e
-Size (asterisk-18.9.0/pjproject-2.10.tar.bz2) = 7339188 bytes
+BLAKE2s (asterisk-18.21.0/asterisk-18.21.0.tar.gz) = dee2f2c4205d419c30a7d35dafc8dbaf42889cb1879288521a4789302640458b
+SHA512 (asterisk-18.21.0/asterisk-18.21.0.tar.gz) = 4a3c57af70b74918b61e1c67423667a876fcc519376f1795054a55700acb5d05da8e4e0a3e3187760203bc262678a6c29eae07ed2a5e2df84a9a555ec79cb48f
+Size (asterisk-18.21.0/asterisk-18.21.0.tar.gz) = 28446501 bytes
+BLAKE2s (asterisk-18.21.0/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz) = 3f7e5fe212d7e7cdca14c52527a2552311ab7762c3f1464b09ddedc7c66aebde
+SHA512 (asterisk-18.21.0/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz) = 3f2f7bf3d5bce3544bc013f913c352f0204a3ce96239987403eb9dce8bc87e64a61d437762323a422a87b2fad1f3bf3e7a5f3d0d340f912a1b1dbfea9479d41d
+Size (asterisk-18.21.0/asterisk-extra-sounds-en-gsm-1.5.2.tar.gz) = 4253587 bytes
+BLAKE2s (asterisk-18.21.0/pjproject-2.13.1.md5) = 933be89ea03bc24a3a965d37a8985a2af3ea404e24a8fdd296a2be07d5390de0
+SHA512 (asterisk-18.21.0/pjproject-2.13.1.md5) = 5a8c35e79d10760f74d02332f35aad3517fc3c72e62e2b1c35fcb1d613bbad4d96fa07f1cea89514dba2d237a36a698e94b1242be938d492d20b76a130c0d0f1
+Size (asterisk-18.21.0/pjproject-2.13.1.md5) = 172 bytes
+BLAKE2s (asterisk-18.21.0/pjproject-2.13.1.tar.bz2) = 7c04ae740c66f92502684de834b4055e7f4842bcb35f0efc12f183c8d8c37f7f
+SHA512 (asterisk-18.21.0/pjproject-2.13.1.tar.bz2) = 2f1eb3cb8f52a5536c355b02b1abfa24c7d2263b5338568a7cd8167d349e007c34afafcdd7ed510bfc4fc859494383fac05e8325e46fd66219dbead86c5c3562
+Size (asterisk-18.21.0/pjproject-2.13.1.tar.bz2) = 7825201 bytes
 SHA1 (patch-Makefile) = 676687f298151dbe548ae26a4f6f3fe8bf1f174e
 SHA1 (patch-addons_chan__ooh323.c) = 1775da7ca2129a962ed460bd1e78ba3ce6afa62c
 SHA1 (patch-apps_app__adsiprog.c) = 031139e5cd1ef6bb2afb0a74fee3d752eded0a2c
@@ -23,14 +23,16 @@ SHA1 (patch-apps_app__minivm.c) = 22ee6e
 SHA1 (patch-apps_app__queue.c) = fdf7cf202b60e24cd9227f7e461bbd541565d602
 SHA1 (patch-apps_app__sms.c) = ad65b3cb2a30489551101f7534c691cd1155d18f
 SHA1 (patch-apps_app__voicemail.c) = bee10453a86039a99db9df644585800f347aaace
+SHA1 (patch-build__tools_make__xml__documentation) = 5a3f332cc5f982b37cfb328837cc7515776fb283
 SHA1 (patch-build__tools_mkpkgconfig) = 7fab8fcf46d9f8a3b98455674fec6307ec472b23
 SHA1 (patch-cdr_cdr__pgsql.c) = 82b002a1f5ed3b7361a98e2bffb5cea8833949b8
 SHA1 (patch-cel_cel__pgsql.c) = b280efab2b035ce60be268bac9bc8824910b2b8f
+SHA1 (patch-channels_chan__oss.c) = 70b4a549b21e39dc45474d0104edf69edd725eef
 SHA1 (patch-channels_chan__pjsip.c) = efd4cbb82133fc5ddf7de70d01c99e185c585211
 SHA1 (patch-channels_chan__sip.c) = ed285612eae6cbfde19ded87db9360c0bca153c7
 SHA1 (patch-channels_pjsip_cli__commands.c) = 01baa9d242e3af02a1f3540cfb3064ad68c71d67
 SHA1 (patch-channels_pjsip_dialplan__functions.c) = 2cf8199c4ec9d4894eb922c2703d49ecc06188ef
-SHA1 (patch-configure) = 7bd4d4dd2fc922591de685f6aa5be078e8cb2c64
+SHA1 (patch-configure) = d04ab000b8472b997816069c57fa5cd271e9ef90
 SHA1 (patch-configure.ac) = b972730a2be3bf54502116f1f7e03afee76a02cc
 SHA1 (patch-contrib_scripts_vmail.cgi) = 7935ce96ea319eb19cc2ce999813eb837d5357c0
 SHA1 (patch-funcs_func__cdr.c) = 79c743df264948e5ea9e1c292012a1f6362d0c1e
@@ -42,7 +44,6 @@ SHA1 (patch-funcs_func__pjsip__endpoint.
 SHA1 (patch-funcs_func__strings.c) = 08d313add57c5be822a19311fc70a7555bd63877
 SHA1 (patch-include_asterisk_autoconfig.h.in) = 23807b08b94f5cf9c2de76c2928f7ae38997d006
 SHA1 (patch-include_asterisk_lock.h) = 85418bcd20f3ed7eb0310f46f3b2d334980bdcef
-SHA1 (patch-include_asterisk_sha1.h) = 9b233ef82b50b8d94177616e1382991656ce1ebf
 SHA1 (patch-include_asterisk_strings.h) = 9ace78a13131bcb411eda79a98264b5cfcc7789c
 SHA1 (patch-main_Makefile) = e3b5d261fd15ffd23d81060ff3aafba6b0300e7c
 SHA1 (patch-main_acl.c) = 06a9d247b19d648e9ff54ac2a234dc8ac8c023bb
@@ -57,6 +58,7 @@ SHA1 (patch-main_callerid.c) = 0ea1b3df8
 SHA1 (patch-main_cdr.c) = 540fbdb354aba100fa37392b879b92a85d1d8620
 SHA1 (patch-main_cel.c) = 22fa21db8e0afa0958d34014f52e2c4fe9c73ba2
 SHA1 (patch-main_cli.c) = ee72bcaac7dce397354cbc09af4ed7441dbb4650
+SHA1 (patch-main_config.c) = d5159f2c16cc6324b79f51cfc797d26c64995a6f
 SHA1 (patch-main_conversions.c) = a516ef4f706fabbd250f66a3159825a2a6085344
 SHA1 (patch-main_dns__naptr.c) = 4fa3fe5d2acf7bcd84ca2044280c644e4bd15d7f
 SHA1 (patch-main_enum.c) = c5f620297cf98f95ce74aa0d98eddc697946a77b
@@ -64,7 +66,7 @@ SHA1 (patch-main_features.c) = 6e50ea4c6
 SHA1 (patch-main_http.c) = b36f1f3f0da25456a17888d34ea2bf7b61c1acf4
 SHA1 (patch-main_indications.c) = 511b4c270e4a4a71517109f959121777caf2aa36
 SHA1 (patch-main_logger.c) = 321a52b3015af85ea13055953cec5a5d9da05ec8
-SHA1 (patch-main_manager.c) = cb87e72e630a5f192b614d203a8cd81190ba1424
+SHA1 (patch-main_manager.c) = 661e01ff509721d6b6c15d803d0b3ce71bb48442
 SHA1 (patch-main_pbx.c) = 8e7ced268edb29238f96418e8b21456364c4ae1f
 SHA1 (patch-main_pbx__builtins.c) = f53aadc04fd489f6725911537007af4f4076ee56
 SHA1 (patch-main_pbx__timing.c) = a4657330086c5b0e8fd271d5676fb897badea452
@@ -79,16 +81,25 @@ SHA1 (patch-pbx_pbx__config.c) = cc5e6d2
 SHA1 (patch-pbx_pbx__dundi.c) = 1bc28ff2412da569f139f245c5223845a2f6cebe
 SHA1 (patch-res_ael_pval.c) = 8a238c78403d3098bf8be8ae266162bc05e586f3
 SHA1 (patch-res_res__calendar.c) = 45211a3baf8fbd8b201ba0167f8c56fb35728c4a
-SHA1 (patch-res_res__calendar__caldav.c) = afe2f4806dd57148dde11baeefaa7897fce4d485
-SHA1 (patch-res_res__calendar__icalendar.c) = ed34b7147d8834ebadac9b1b8488a4c645f90a5b
+SHA1 (patch-res_res__format__attr__celt.c) = 62d5e3e83e8d62dffcb0672073a2694f5a5c754c
+SHA1 (patch-res_res__format__attr__h263.c) = 4445303b43f107251c54a8eaf3e69a89ee26ca27
+SHA1 (patch-res_res__format__attr__ilbc.c) = 29a4b324e91b0e30a5bed3da3e6828b959429883
+SHA1 (patch-res_res__format__attr__opus.c) = 1a8b3c93f32d41841ab5ea38bdfc83eb9599ed5f
+SHA1 (patch-res_res__format__attr__silk.c) = 5b9579e5086cd804f43774c4ae8a892eb5ec95b7
+SHA1 (patch-res_res__format__attr__siren14.c) = d024ca11b0e2641d2f36b90423737bd2c7781da7
+SHA1 (patch-res_res__format__attr__siren7.c) = 450a173dfb29724853db3183d36759549a5243e4
+SHA1 (patch-res_res__format__attr__vp8.c) = 2ca03467ccb1a3657546dfa4f768ab0a463d67e3
 SHA1 (patch-res_res__hep__pjsip.c) = b0c8fed52451ec31a2c77d4abd28640631bb708c
 SHA1 (patch-res_res__limit.c) = e80f370fe5b84dcdc2f38e2137d5ed6f75ba35a4
 SHA1 (patch-res_res__musiconhold.c) = 401999cefa3805f63df33424c635ad18a7d00748
 SHA1 (patch-res_res__pjproject.c) = 0326bf12d9f798c8eae2eff4fad8b86d4bbc0589
+SHA1 (patch-res_res__pjsip__diversion.c) = 3f527faaf069d5e303dce75bc8a6dbd7be9d85a0
+SHA1 (patch-res_res__pjsip_pjsip__configuration.c) = 9864e8bf5cfad03c5e1ef62b33c89514aaeaba19
 SHA1 (patch-res_res__xmpp.c) = 390376180d1fb11a41c16f59dd44f506006a8e5d
 SHA1 (patch-sounds_Makefile) = acc15088ae2545f2822246466bfe783b5215fc54
 SHA1 (patch-tests_test__locale.c) = f3f1edc86356f2a7b4d3493433c772e164c77f66
 SHA1 (patch-tests_test__voicemail__api.c) = c600f726136581e47cf34da2c0bb485b8a5912eb
+SHA1 (patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch) = 69b6b4795f5616cbbf0daa190fd79e0ada92e7a8
 SHA1 (patch-utils_Makefile) = 4b4be483c20768d640efae5c18fc6f6770eb8c0c
 SHA1 (patch-utils_db1-ast_include_db.h) = 03b43353b7967f999ace3eb160828c530e2e8fae
 SHA1 (patch-utils_extconf.c) = f35d079c4801fe20132ff52d63d951d9e1658902

Index: pkgsrc/comms/asterisk18/options.mk
diff -u pkgsrc/comms/asterisk18/options.mk:1.15 pkgsrc/comms/asterisk18/options.mk:1.16
--- pkgsrc/comms/asterisk18/options.mk:1.15     Sun Jun 13 07:57:52 2021
+++ pkgsrc/comms/asterisk18/options.mk  Mon Feb 19 05:59:51 2024
@@ -1,9 +1,8 @@
-# $NetBSD: options.mk,v 1.15 2021/06/13 07:57:52 jnemeth Exp $
+# $NetBSD: options.mk,v 1.16 2024/02/19 05:59:51 jnemeth Exp $
 
 PKG_OPTIONS_VAR=               PKG_OPTIONS.asterisk
-PKG_SUPPORTED_OPTIONS=         x11 unixodbc ilbc webvmail ldap spandsp
+PKG_SUPPORTED_OPTIONS=         unixodbc ilbc webvmail ldap spandsp
 PKG_SUPPORTED_OPTIONS+=                jabber speex snmp pgsql asterisk-config
-PKG_OPTIONS_LEGACY_OPTS+=      gtk:x11
 PKG_SUGGESTED_OPTIONS=         ldap jabber speex asterisk-config
 
 .include "../../mk/bsd.options.mk"
@@ -20,18 +19,6 @@ PLIST_VARS+=         speex snmp pgsql srtp
 #MAKE_FLAGS+=          WITHOUT_ZAPTEL=1
 #.endif
 
-# gtkconsole depends on GTK 2.x
-.if !empty(PKG_OPTIONS:Mx11)
-.  include "../../x11/gtk2/buildlink3.mk"
-.  include "../../devel/SDL/buildlink3.mk"
-CONFIGURE_ARGS+=       --with-sdl
-CONFIGURE_ARGS+=       --with-gtk2
-PLIST.x11=             yes
-.else
-CONFIGURE_ARGS+=       --without-sdl
-CONFIGURE_ARGS+=       --without-gtk2
-.endif
-
 .if !empty(PKG_OPTIONS:Munixodbc)
 .  include "../../databases/unixodbc/buildlink3.mk"
 .  include "../../devel/libltdl/buildlink3.mk"
@@ -59,18 +46,16 @@ CONFIGURE_ARGS+=    --without-iksemel
 
 MAKE_FLAGS+=   GLOBAL_MAKEOPTS=${WRKSRC}/pkgsrc.makeopts
 post-configure:
-.if !empty(PKG_OPTIONS:Mx11)
-       ${ECHO} "MENUSELECT_PBX=-pbx_gtkconsole" >> ${WRKSRC}/pkgsrc.makeopts
-.endif
 .if !empty(PKG_OPTIONS:Munixodbc)
        ${ECHO} "MENUSELECT_OPTS_app_voicemail=ODBC_STORAGE" >> ${WRKSRC}/pkgsrc.makeopts
 .endif
-.if defined(PLIST.mgcp)
-       ${ECHO} "MENUSELECT_RES=-res_pktccops" >> ${WRKSRC}/pkgsrc.makeopts
-       ${ECHO} "MENUSELECT_CHANNELS=-chan_mgcp" >> ${WRKSRC}/pkgsrc.makeopts
-.endif
+#.if defined(PLIST.mgcp)
+#      ${ECHO} "MENUSELECT_RES=-res_pktccops" >> ${WRKSRC}/pkgsrc.makeopts
+#      ${ECHO} "MENUSELECT_CHANNELS=-chan_mgcp" >> ${WRKSRC}/pkgsrc.makeopts
+#.endif
        ${ECHO} "MENUSELECT_AGIS=agi-test.agi eagi-test eagi-sphinx-test jukebox.agi" >> ${WRKSRC}/pkgsrc.makeopts
        ${ECHO} "MENUSELECT_CFLAGS=-BUILD_NATIVE" >> ${WRKSRC}/pkgsrc.makeopts
+       ${ECHO} "MENUSELECT_RES=-res_mwi_external_ami -res_ari_mailboxes -res_pjsip_geolocation -res_stasis_mailbox" >> ${WRKSRC}/pkgsrc.makeopts
        # this is a hack to work around a bug in menuselect
        cd ${WRKSRC} && make menuselect.makeopts
 

Index: pkgsrc/comms/asterisk18/patches/patch-configure
diff -u pkgsrc/comms/asterisk18/patches/patch-configure:1.3 pkgsrc/comms/asterisk18/patches/patch-configure:1.4
--- pkgsrc/comms/asterisk18/patches/patch-configure:1.3 Fri Dec 17 08:07:06 2021
+++ pkgsrc/comms/asterisk18/patches/patch-configure     Mon Feb 19 05:59:52 2024
@@ -1,8 +1,8 @@
-$NetBSD: patch-configure,v 1.3 2021/12/17 08:07:06 jnemeth Exp $
+$NetBSD: patch-configure,v 1.4 2024/02/19 05:59:52 jnemeth Exp $
 
---- configure.orig     2021-12-09 16:44:54.000000000 +0000
+--- configure.orig     2023-07-20 13:04:41.000000000 +0000
 +++ configure
-@@ -9116,12 +9116,12 @@ else
+@@ -9303,12 +9303,12 @@ else
  
                        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clang -fblocks" >&5
  $as_echo_n "checking for clang -fblocks... " >&6; }
@@ -17,7 +17,7 @@ $NetBSD: patch-configure,v 1.3 2021/12/1
                                AST_CLANG_BLOCKS_LIBS="-lBlocksRuntime"
                                AST_CLANG_BLOCKS="-fblocks"
                                { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-@@ -15264,7 +15264,7 @@ fi
+@@ -15580,7 +15580,7 @@ fi
  done
  
  
@@ -26,7 +26,7 @@ $NetBSD: patch-configure,v 1.3 2021/12/1
  if test "x$ac_cv_header_sys_poll_h" = xyes; then :
  
  else
-@@ -17279,7 +17279,7 @@ fi
+@@ -17562,7 +17562,7 @@ fi
  done
  
  
@@ -35,7 +35,7 @@ $NetBSD: patch-configure,v 1.3 2021/12/1
  do :
    as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
  ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-@@ -17514,7 +17514,7 @@ rm -f core conftest.err conftest.$ac_obj
+@@ -17797,7 +17797,7 @@ rm -f core conftest.err conftest.$ac_obj
  LDFLAGS=${old_LDFLAGS}
  rm -f conftest.dynamics
  
@@ -44,7 +44,7 @@ $NetBSD: patch-configure,v 1.3 2021/12/1
  if test "x$ac_cv_header_sys_poll_h" = xyes; then :
    HAS_POLL=1
  
-@@ -19803,6 +19803,148 @@ rm -f core conftest.err conftest.$ac_obj
+@@ -20126,6 +20126,148 @@ rm -f core conftest.err conftest.$ac_obj
  
  
  
@@ -193,12 +193,3 @@ $NetBSD: patch-configure,v 1.3 2021/12/1
  # The cast to long int works around a bug in the HP C Compiler
  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
-@@ -20907,6 +21049,8 @@ $as_echo_n "checking for getifaddrs() su
- 
-       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h.  */
-+ #include <sys/types.h>
-+ #include <sys/socket.h>
-  #include <ifaddrs.h>
- int
- main ()

Index: pkgsrc/comms/asterisk18/patches/patch-main_manager.c
diff -u pkgsrc/comms/asterisk18/patches/patch-main_manager.c:1.2 pkgsrc/comms/asterisk18/patches/patch-main_manager.c:1.3
--- pkgsrc/comms/asterisk18/patches/patch-main_manager.c:1.2    Sun Jun 13 07:57:53 2021
+++ pkgsrc/comms/asterisk18/patches/patch-main_manager.c        Mon Feb 19 05:59:52 2024
@@ -1,17 +1,17 @@
-$NetBSD: patch-main_manager.c,v 1.2 2021/06/13 07:57:53 jnemeth Exp $
+$NetBSD: patch-main_manager.c,v 1.3 2024/02/19 05:59:52 jnemeth Exp $
 
---- main/manager.c.orig        2018-05-01 20:12:26.000000000 +0000
+--- main/manager.c.orig        2024-01-25 16:17:00.000000000 +0000
 +++ main/manager.c
-@@ -2639,7 +2639,7 @@ static char *handle_showmanconn(struct a
+@@ -2779,7 +2779,7 @@ static char *handle_showmanconn(struct a
        struct mansession_session *session;
        time_t now = time(NULL);
- #define HSMCONN_FORMAT1 "  %-15.15s  %-55.55s  %-10.10s  %-10.10s  %-8.8s  %-8.8s  %-5.5s  %-5.5s\n"
--#define HSMCONN_FORMAT2 "  %-15.15s  %-55.55s  %-10d  %-10d  %-8d  %-8d  %-5.5d  %-5.5d\n"
-+#define HSMCONN_FORMAT2 "  %-15.15s  %-55.55s  %-10jd  %-10jd  %-8d  %-8d  %-5.5d  %-5.5d\n"
+ #define HSMCONN_FORMAT1 "  %-15.15s  %-55.55s  %-10.10s  %-10.10s  %-8.8s  %-8.8s  %-10.10s  %-10.10s\n"
+-#define HSMCONN_FORMAT2 "  %-15.15s  %-55.55s  %-10d  %-10d  %-8d  %-8d  %-10.10d  %-10.10d\n"
++#define HSMCONN_FORMAT2 "  %-15.15s  %-55.55s  %-10jd  %-10jd  %-8d  %-8d  %-10.10d  %-10.10d\n"
        int count = 0;
        struct ao2_iterator i;
  
-@@ -2665,8 +2665,8 @@ static char *handle_showmanconn(struct a
+@@ -2805,8 +2805,8 @@ static char *handle_showmanconn(struct a
                        ao2_lock(session);
                        ast_cli(a->fd, HSMCONN_FORMAT2, session->username,
                                ast_sockaddr_stringify_addr(&session->addr),
@@ -22,7 +22,7 @@ $NetBSD: patch-main_manager.c,v 1.2 2021
                                session->stream ? ast_iostream_get_fd(session->stream) : -1,
                                session->inuse,
                                session->readperm,
-@@ -3510,9 +3510,9 @@ static int action_ping(struct mansession
+@@ -3732,9 +3732,9 @@ static int action_ping(struct mansession
        astman_append(
                s,
                "Ping: Pong\r\n"
@@ -34,7 +34,7 @@ $NetBSD: patch-main_manager.c,v 1.2 2021
        return 0;
  }
  
-@@ -4621,7 +4621,7 @@ static void generate_status(struct manse
+@@ -4936,7 +4936,7 @@ static void generate_status(struct manse
                "DNID: %s\r\n"
                "EffectiveConnectedLineNum: %s\r\n"
                "EffectiveConnectedLineName: %s\r\n"
@@ -43,7 +43,7 @@ $NetBSD: patch-main_manager.c,v 1.2 2021
                "BridgeID: %s\r\n"
                "Application: %s\r\n"
                "Data: %s\r\n"
-@@ -4641,7 +4641,7 @@ static void generate_status(struct manse
+@@ -4956,7 +4956,7 @@ static void generate_status(struct manse
                S_OR(ast_channel_dialed(chan)->number.str, ""),
                S_COR(effective_id.number.valid, effective_id.number.str, "<unknown>"),
                S_COR(effective_id.name.valid, effective_id.name.str, "<unknown>"),
@@ -52,7 +52,7 @@ $NetBSD: patch-main_manager.c,v 1.2 2021
                bridge ? bridge->uniqueid : "",
                ast_channel_appl(chan),
                ast_channel_data(chan),
-@@ -6920,8 +6920,8 @@ static int __attribute__((format(printf,
+@@ -7816,8 +7816,8 @@ static int __attribute__((format(printf,
        if (timestampevents) {
                now = ast_tvnow();
                ast_str_append(&buf, 0,
@@ -63,16 +63,23 @@ $NetBSD: patch-main_manager.c,v 1.2 2021
        }
        if (manager_debug) {
                static int seq;
-@@ -7433,7 +7433,7 @@ static void xml_copy_escape(struct ast_s
-                       }
+@@ -8329,13 +8329,13 @@ static void xml_copy_escape(struct ast_s
                }
  
--              if ( (mode & 2) && !isalnum(*src)) {
-+              if ( (mode & 2) && !isalnum((unsigned char)*src)) {
-                       *dst++ = '_';
-                       space--;
-                       continue;
-@@ -7466,7 +7466,7 @@ static void xml_copy_escape(struct ast_s
+               if (mode & 2) {
+-                      if (save == src && isdigit(*src)) {
++                      if (save == src && isdigit((unsigned char)*src)) {
+                               /* The first character of an XML attribute cannot be a digit */
+                               *dst++ = '_';
+                               *dst++ = *src;
+                               space -= 2;
+                               continue;
+-                      } else if (!isalnum(*src)) {
++                      } else if (!isalnum((unsigned char)*src)) {
+                               /* Replace non-alphanumeric with an underscore */
+                               *dst++ = '_';
+                               space--;
+@@ -8370,7 +8370,7 @@ static void xml_copy_escape(struct ast_s
                        break;
  
                default:

Added files:

Index: pkgsrc/comms/asterisk18/patches/patch-build__tools_make__xml__documentation
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-build__tools_make__xml__documentation:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-build__tools_make__xml__documentation Mon Feb 19 05:59:51 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-build__tools_make__xml__documentation,v 1.1 2024/02/19 05:59:51 jnemeth Exp $
+
+--- build_tools/make_xml_documentation.orig    2022-04-14 21:53:34.000000000 +0000
++++ build_tools/make_xml_documentation
+@@ -214,7 +214,7 @@ for subdir in ${mod_subdirs} ; do
+                                       ${XMLSTARLET} val -e -d "${source_tree}/doc/appdocsxml.dtd" "${i}" || { echo "" ; exit 1 ; }
+                       fi
+               fi
+-              ${SED} -r "/^\s*(<[?]xml|<.DOCTYPE|<.?docs)/d" "${i}" >> "${output_file}"
++              ${SED} -r "/^[[:space:]]*(<[?]xml|<.DOCTYPE|<.?docs)/d" "${i}" >> "${output_file}"
+       done
+ done
+ echo "</docs>" >> "${output_file}"
Index: pkgsrc/comms/asterisk18/patches/patch-channels_chan__oss.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-channels_chan__oss.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-channels_chan__oss.c  Mon Feb 19 05:59:51 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-channels_chan__oss.c,v 1.1 2024/02/19 05:59:51 jnemeth Exp $
+
+--- channels/chan_oss.c.orig   2022-04-14 21:53:34.000000000 +0000
++++ channels/chan_oss.c
+@@ -1317,7 +1317,7 @@ static void store_mixer(struct chan_oss_
+       int i;
+ 
+       for (i = 0; i < strlen(s); i++) {
+-              if (!isalnum(s[i]) && strchr(" \t-/", s[i]) == NULL) {
++              if (!isalnum((unsigned char)s[i]) && strchr(" \t-/", s[i]) == NULL) {
+                       ast_log(LOG_WARNING, "Suspect char %c in mixer cmd, ignoring:\n\t%s\n", s[i], s);
+                       return;
+               }
Index: pkgsrc/comms/asterisk18/patches/patch-main_config.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-main_config.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-main_config.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,14 @@
+$NetBSD: patch-main_config.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- main/config.c.orig 2024-02-12 05:14:56.251989318 +0000
++++ main/config.c
+@@ -44,6 +44,9 @@
+ #include <libgen.h>
+ #include <time.h>
+ #include <sys/stat.h>
++#if HAVE_SYS_WAIT_H
++#include <sys/wait.h>
++#endif
+ 
+ #include <math.h>     /* HUGE_VAL */
+ #include <regex.h>
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__celt.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__celt.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__celt.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__celt.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_celt.c.orig    2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_celt.c
+@@ -89,7 +89,7 @@ static struct ast_format *celt_parse_sdp
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       if (sscanf(attribs, "framesize=%30u", &val) == 1) {
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__h263.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__h263.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__h263.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__h263.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_h263.c.orig    2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_h263.c
+@@ -180,7 +180,7 @@ static struct ast_format *h263_parse_sdp
+ 
+       /* upper-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = toupper(*attrib);
++              *attrib = toupper((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       attr->BPP = H263_ATTR_KEY_UNSET;
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__ilbc.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__ilbc.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__ilbc.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__ilbc.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_ilbc.c.orig    2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_ilbc.c
+@@ -87,7 +87,7 @@ static struct ast_format *ilbc_parse_sdp
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       if ((kvp = strstr(attribs, "mode")) && sscanf(kvp, "mode=%30u", &val) == 1) {
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__opus.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__opus.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__opus.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__opus.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_opus.c.orig    2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_opus.c
+@@ -151,7 +151,7 @@ static struct ast_format *opus_parse_sdp
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       sdp_fmtp_get(attribs, CODEC_OPUS_ATTR_MAX_PLAYBACK_RATE, &attr->maxplayrate);
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__silk.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__silk.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__silk.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__silk.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_silk.c.orig    2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_silk.c
+@@ -96,7 +96,7 @@ static struct ast_format *silk_parse_sdp
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       if (sscanf(attribs, "maxaveragebitrate=%30u", &val) == 1) {
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren14.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren14.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren14.c      Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__siren14.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_siren14.c.orig 2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_siren14.c
+@@ -55,7 +55,7 @@ static struct ast_format *siren14_parse_
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       if (sscanf(attribs, "bitrate=%30u", &val) == 1) {
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren7.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren7.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__siren7.c       Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__siren7.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_siren7.c.orig  2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_siren7.c
+@@ -55,7 +55,7 @@ static struct ast_format *siren7_parse_s
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       if (sscanf(attribs, "bitrate=%30u", &val) == 1) {
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__vp8.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__vp8.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__format__attr__vp8.c  Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__format__attr__vp8.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_format_attr_vp8.c.orig     2022-04-14 21:53:34.000000000 +0000
++++ res/res_format_attr_vp8.c
+@@ -92,7 +92,7 @@ static struct ast_format *vp8_parse_sdp_
+ 
+       /* lower-case everything, so we are case-insensitive */
+       for (attrib = attribs; *attrib; ++attrib) {
+-              *attrib = tolower(*attrib);
++              *attrib = tolower((unsigned char)*attrib);
+       } /* based on channels/chan_sip.c:process_a_sdp_image() */
+ 
+       if ((kvp = strstr(attribs, "max-fr")) && sscanf(kvp, "max-fr=%30u", &val) == 1) {
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip__diversion.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip__diversion.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip__diversion.c   Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__pjsip__diversion.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_pjsip_diversion.c.orig     2022-04-14 21:53:34.000000000 +0000
++++ res/res_pjsip_diversion.c
+@@ -61,7 +61,7 @@ static int sip_is_token(const char *str)
+ 
+       is_token = 1;
+       do {
+-              if (!isalnum(*str)
++              if (!isalnum((unsigned char)*str)
+                       && !strchr("-.!%*_+`'~", *str)) {
+                       /* The character is not allowed in a token. */
+                       is_token = 0;
Index: pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip_pjsip__configuration.c
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip_pjsip__configuration.c:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-res_res__pjsip_pjsip__configuration.c Mon Feb 19 05:59:52 2024
@@ -0,0 +1,13 @@
+$NetBSD: patch-res_res__pjsip_pjsip__configuration.c,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- res/res_pjsip/pjsip_configuration.c.orig   2022-04-14 21:53:34.000000000 +0000
++++ res/res_pjsip/pjsip_configuration.c
+@@ -1039,7 +1039,7 @@ static int from_user_handler(const struc
+       const char *val;
+ 
+       for (val = var->value; *val; val++) {
+-              if (!isalpha(*val) && !isdigit(*val) && !strchr(valid_uri_marks, *val)) {
++              if (!isalpha((unsigned char)*val) && !isdigit((unsigned char)*val) && !strchr(valid_uri_marks, *val)) {
+                       ast_log(LOG_ERROR, "Error configuring endpoint '%s' - '%s' field "
+                       "contains invalid character '%c'\n",
+                       ast_sorcery_object_get_id(endpoint), var->name, *val);
Index: pkgsrc/comms/asterisk18/patches/patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch
diff -u /dev/null pkgsrc/comms/asterisk18/patches/patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch:1.1
--- /dev/null   Mon Feb 19 05:59:52 2024
+++ pkgsrc/comms/asterisk18/patches/patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch        Mon Feb 19 05:59:52 2024
@@ -0,0 +1,20 @@
+$NetBSD: patch-third-party_pjproject_patches_0030-pjlib-src-pj-os__core__unix.c.patch,v 1.1 2024/02/19 05:59:52 jnemeth Exp $
+
+--- third-party/pjproject/patches/0030-pjlib-src-pj-os_core_unix.c.patch.orig  2024-01-22 05:51:30.584710770 +0000
++++ third-party/pjproject/patches/0030-pjlib-src-pj-os_core_unix.c.patch
+@@ -0,0 +1,15 @@
++--- source/pjlib/src/pj/os_core_unix.c.orig   2024-01-22 05:44:17.920342932 +0000
+++++ source/pjlib/src/pj/os_core_unix.c
++@@ -640,7 +640,11 @@ static void set_thread_display_name(cons
++ #   if defined(PJ_DARWINOS) && PJ_DARWINOS != 0
++     pthread_setname_np(name);
++ #   else
++-    pthread_setname_np(pthread_self(), name);
+++#       if defined(__NetBSD__)
+++            pthread_setname_np(pthread_self(), name, NULL);
+++#       else
+++            pthread_setname_np(pthread_self(), name);
+++#       endif
++ #   endif
++ #elif defined(PJ_HAS_PTHREAD_SET_NAME_NP) && PJ_HAS_PTHREAD_SET_NAME_NP != 0
++     pthread_set_name_np(pthread_self(), name);



Home | Main Index | Thread Index | Old Index