Releases: signalwire/freeswitch
FreeSWITCH v1.11.1 Release
This is an important release containing critical security fixes and stability improvements, alongside the new reloadcert API for hot TLS certificate reloads without disconnects across mod_sofia and mod_verto, and SIP 603+ detection and passthrough control. We strongly encourage all users to upgrade to v1.11.1 as soon as possible.
Release Notes - FreeSWITCH - Version 1.11.1
Enhancement
- [GHA] Update ffmpeg and libpq in macos.yml
- [mod_commands, mod_verto] Add new reloadcert API and let mod_verto reload certificates on the fly without disconnects.
- [mod_sofia] Add SIP 603+ detection and passthrough control.
- [mod_sofia] capture SIP reason header on INVITE failure
- [mod_sofia] Reload certificates on the fly without disconnects using reloadcert API.
Bug
- [Build-System] Update libks requirements to 2.0.11
- [build] Cap cJSON parser nesting depth to prevent stack overflow.
- [Core, modules] Fix various dead assignments.
- [core] Fix segments count check in clean_uri(). Add unit-test.
- [core] Fix use-after-free in session thread pool worker.
- [core] Use switch_stun_ipv6_t for STUN IPv6 write paths.
- [libesl] Fix build of tests
- [libesl] Validate
Content-Lengthinesl_recv_event. - [mod_commands] Fix reloadacl description
- [mod_erlang_event] Fix correctness, OTP compatibility, and memory issues
- [mod_sofia] Fix handling of sip-options-respond-503-on-busy profile parameter
- [mod_sofia] Fix use-after-free in dispatch event thread.
- [mod_verto] Defer userauth state writes until after password gate.
- [mod_verto] Fix heap overflow in HTTP POST body read.
- [mod_verto] Gate sessid bind on auth, block cross-identity eviction.
Installation guides
https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/
https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/FreeSWITCH-1.11.x-Release-notes
FreeSWITCH v1.11.0 Release
This is an important release containing critical security fixes and stability improvements, alongside the migration to PCRE2, the addition of Debian 13 Trixie support, the removal of ~30 legacy modules, and the Windows OpenSSL upgrade to 3.x. We encourage all users to upgrade to v1.11.0 whenever possible.
Release Notes - FreeSWITCH - Version 1.11.0
Enhancement
- [Build-System] Add a Dockerfile for Coverity scan.
- [Build-System] Add Debian 13 Trixie suite
- [Build-System] Add Debian 13 Trixie support
- [Build-System] Update OpenSSL to v3.4.3, bump libks to 2.0.7 on Windows.
- [Build-System] Upgrade legacy Windows SDK to 10.0 in Visual Studio projects.
- [Build-system] Use swig 4.1
- [Build-System] Windows: Update OpenSSL to v3.4.0, libpcap to 1.10.4, rabbitmq-c to 0.15.0
- [Build-System] Windows: Update OpenSSL to v3.4.0, rabbitmq-c to 0.15.0
- [BUILD] Add Dockerfiles and related small fixes.
- [Core] Add new SWITCH_SPEECH_FLAG_MULTI flag and check it in switch_ivr_speak_text_handle().
- [core] add uuidv7 support
- [Core] Upgrade FreeSWITCH to use PCRE2 library. Be aware of breaking changes.
- [DOCS] Add guides for building FreeSWITCH build-dependencies
- [GHA] Add
trixiebuild target - [GHA] Add MacOS build workflow
- [GHA] Add tests.
- [GHA] Bump
trixieimage version - [GHA] Treat v1.11 as a release branch
- [GHA] Update deprecated windows-2019 image to windows-2022
- [GHA] Use
ubuntu-24.04-armrunner - [mod_abstraction] Remove from tree
- [mod_amqp] Add support for newer librabbitmq
- [mod_av] Add support for FFmpeg 6.0
- [mod_av] Add support for FFmpeg 6.1
- [mod_av] Add support for FFmpeg 7.0
- [mod_av] Add support for FFmpeg 7.1
- [mod_cdr_mongodb] Remove from tree
- [mod_cepstral] Remove from tree
- [mod_clearmode] Remove from tree
- [mod_dahdi_codec] Remove from tree
- [mod_dptools] Move tts format from mod_ssml.
- [mod_event_zmq] Remove from tree
- [mod_gsmopen] Remove from tree.
- [mod_h26x] Remove from tree
- [mod_isac] Remove from tree
- [mod_khomp] Remove from tree
- [mod_ladspa] Remove from tree
- [mod_lua] Add Dbh:query_rows
- [mod_mp4, mod_mp4v, mod_mp4v2] Remove from tree
- [mod_oreka] Remove from tree
- [mod_pgsql] Add support for PGRES_TUPLES_CHUNK in PostgreSQL 17+
- [mod_portaudio, mod_portaudio_stream] Remove from tree
- [mod_python] Remove from tree
- [mod_rad_auth] Remove from tree
- [mod_radius_cdr] Remove from tree
- [mod_raven] Remove from tree
- [mod_rayo, mod_ssml, iksemel] Remove from tree
- [mod_rss] Remove from tree
- [mod_sangoma_codec] Remove from tree
- [mod_skypopen] Remove from tree.
- [mod_sms_flowroute] Remove from tree
- [mod_snom] Remove from tree.
- [mod_sonar] Remove from tree
- [mod_soundtouch] Remove from tree
- [mod_ssml] Push done when its flag multi
- [mod_stress] Remove from tree.
- [mod_theora] Remove from tree
- [mod_unicall] Remove from tree
- [mod_xml_radius] Remove from tree
- [mod_yaml] Remove from tree
- [Scripts] Introduce FSDEB - a simple way to build FreeSWITCH packages for Debian.
- [Unit-tests] Move test_tts_format out of mod_ssml. Add mod_test and test_tts_format to the Windows build.
- [UTILS] FSGET: Transition to using deb822 format for Debian sources replacing the old freeswitch.list
Bug
- [Build-System] Fix build for m1 and m2 chips on macOS
- [Build-System] Fix jpegsrc download url on Windows.
- [Build-System] Remove Microsoft.Build.Utilities.Core reference from the downloadpackage task to fix building on the latest versions of Visual Studio on Windows.
- [Build-System] Update configure.ac for macOS updates
- [Build-System] Use unique .orig.tar.xz filenames across different Debian distributions. Update Debian distributions since stable is Trixie now. Use codename instead of suite when generating the distribution field in .changes files.
- [Build-System] Windows: Update libks requirement to 2.0.6
- [Core] Add entity expansion limits to XML parser to prevent excessive resource consumption. Add switch_xml unit-tests project to the Windows build.
- [core] Add possibility to disable XML document type definition. Add unit-tests.
- [core] Cleanup
.DS_Store - [Core] Ensure STUN packet adheres to boundaries
- [core] Fix - add missing ice_mutex to protect dtls
- [core] Fix - should take the amount of time until the timer next expires
- [core] Fix - should take the amount of time until the timer will next expire
- [core] fix base64 decoded size when encoded string contains padding =
- [Core] Fix DTLS Peer Certificate verification
- [core] Fix initialization of rtp_session from_addr
- [core] Fix logging of old remote RTP port
- [Core] switch_channel_clear_state_handler(), switch_channel_get_state_handler(): Coverity 1546120 Data race condition
- [esl] 1227669 Resource leak
- [esl] Coverity 1227669 Resource leak
- [FFmpeg] Fix build on newer Windows SDKs.
- [fs_cli, libesl] Coverity fixes.
- [GHA] Add pkgconf to macos.yml
- [GHA] Default to
release=unstablein build workflow. - [GHA] Migrate to new project layout.
- [GHA] More robust MacOS dependency install
- [GHA] Refactor workflows
- [GHA] Remove pinned
cmakeversion in MacOS - [GHA] Simplify
ifin UPLOAD_BUILD_ARTIFACTS - [GHA] Simplify
iflogic for Meta job - [GHA] Use autogenerated matrix for grouping unit-tests.
- [GHA] Use repository default value of artifacts
retention-days - [GHA] Use temporary token to build artifacts, extend manual run options.
- [libesl] Fix heap buffer overflow in esl_buffer_write
- [mod_amr, mod_amrwb] Increase AMR-NB and AMR-WB max decode buffer size by one byte
- [mod_conference] Avoid race conditions touching conference->variables without a mutex.
- [mod_conference] Coverity 1320840 Logically dead code. Execution cannot reach this statement: d = ";"
- [mod_curl] Add curl exit code to response
- [mod_curl] Fix off-by-one error in argument limit checks.
- [mod_curl] fixes 'Unparsable header' error message on HTTP/2 200 reply
- [mod_curl] Increase argument limit and enforce max args constraint
- [mod_dialplan_xml] Fix double free after upgrade to pcre2.
- [mod_http_cache] Fix error: curl_easy_setopt expects a long argument [-Werror=attribute-warning]
- [mod_httpapi] Fix possible segfault when HEAD request fails
- [mod_imagick] Fix build on newer compiler by adding noreturn attribute.
- [mod_opus] Sanitize frame size when parsing Opus packets.
- [mod_perl] Fix implicit declaration of function
- [mod_pgsql] err is now set correctly (dbh:last_error())
- [mod_pocketsphinx] Use system libraries when possible
- [mod_shout] fix build with new clang on macOS
- [mod_sofia] Added missing %s in one form of contact string
- [mod_sofia] Update Polycom UA to recognize new Poly phones
- [mod_spandsp] Fix compilation against >=2023/06/02 spandsp
- [mod_timerfd] Fixed - continue timer loop after receiving a SIGSTOP
- [mod_verto] Fix memory leak by correctly freeing regex
- [mod_verto] Fix time_t formatting
- [mod_xml_rpc] Fix incompatible pointer type
- [Scripts] Only show email changed section if it was changed
- [Unit-tests] Fix test framework error on newer compiler: 'strncpy' output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation]
- [UTILS] Add additional token prefix
- [UTILS] Refactor
fsget.shscript. - [xmlrpc-c] Coverity 1024180, 1024205, 1024301, 1024847, 1024848, 1024377, 1024378, 1024379, 1024380, 1024381, 1024584, 1024495, 1214208 fixes.
- [xmlrpc-c] Coverity 1024199, 1024200, 1024201, 1024202, 1024203, 1024204, 1024196, 1024197, 1024198 fixes. Uninitialized pointer read.
- [xmlrpc-c] Coverity 1500253, 1024634, 1024635, 1227693 fixes.
- [xmlrpc-c] Expat/xmltok: Add missing validation of encoding
Installation guides
https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/
https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/FreeSWITCH-1.11.x-Release-notes
FreeSWITCH v1.10.12 Release
This is the minor release containing important bugfixes, stability improvements and adding ARM64 support. Debian 10 Buster and CentOS support have been dropped.
Release Notes - FreeSWITCH - Version 1.10.12
Enhancement
- [Build-System] Add ARM64 support, extend Debian helper scripts.
- [build] Split
create_dscandcreate-origfunctions inutil.sh. - [CI] Enable scan build 14 on Drone CI
- [Core] Add new switch_rand() a compliant random number generator API. Add a unit-test.
- [Core] Remove mod_kazoo from tree
- [support-d] Add deadlock.py to tree.
Bug
- [Build-System, ldns] config.h change to not define inline under Windows to avoid clash with Windows winsock2.h inline usage. Use updated ldns tarball on Windows.
- [Build-System] Fix crashing MSI packaging on Windows when Visual Studio 2022 is used.
- [Build-System] Update expired Certificate Thumbprint on Windows.
- [Core, mod_sofia] Add switch_uint31_t type. Fix CSeq bigger than 2^31-1.
- [Core] Better handle error cases in switch_rand().
- [core] check_rtcp_and_ice() - stringop-overflow: Fix build on Debian Bookworm.
- [core] Fix scan-build 14 in port allocator
- [Core] Introduce SWITCH_RAND_MAX to switch_rand()
- [Core] rtp_common_write: Coverity 1227609 Calling risky function
- [core] SDP: replace SIP lingo in SDP offer/answer.
- [Core] softtimer: fix crash in timezones when reloading xml
- [Core] switch_core_port_allocator_request_port: Coverity 1227622 Calling risky function
- [Core] switch_find_local_ip: Coverity 1024290 Resource leak.
- [Core] switch_rtp.c: Coverity 1500271, 1500287: Out-of-bounds access (OVERRUN)
- [Core] switch_rtp_create: Coverity 1227620 Calling risky function
- [Core] switch_simple_email: Coverity 1227612 Calling risky function
- [Core] switch_stun.c: Coverity 1468480: Out-of-bounds access (OVERRUN)
- [Core] switch_stun_random_string: Coverity 1227623 Calling risky function
- [Core] VAD: Add a math sanity check to the switch_vad_process
- [Docker] Change default freeswitch UID and GID to 499 in docker/master/Dockerfile
- [GHA] Add build workflow.
- [GHA] Disable repo name check.
- [GHA] Fail early when required secret not set.
- [GHA] Increase verbosity for
mount=type=secret. - [GHA] Pin workflow to repository.
- [GHA] Remove
build-from-fork.yml. - [GHA] Remove Debian
Buster. - [GHA] Rework
pull_request_targetworkflow. - [GHA] Rework how secrets are used inside Dockerfiles.
- [libvpx] Fix scan-build 14
- [mod_amqp] Adjusting to Appropriate Log Level for Message
- [mod_amr, mod_amrwb] Fix input data corruption
- [mod_amrwb] Fix scan-build 14
- [mod_amrwb] Fix scan-build 14 - dead increments
- [mod_av] Fix scan-build 14
- [mod_av] Fix use of switch_size_t in fs_rtp_parse_h263_rfc2190().
- [mod_avmd] Fix scan-build 14
- [mod_avmd] Fix scan-build 14 - dead assignments
- [mod_event_socket] Check if listener is running before pushing more logs or events to its queue
- [mod_fsv] Fix use of 2gb of memory. Fix compiler warnings preventing builds on Bookworm.
- [mod_mariadb] Coverity 1546237 COPY_INSTEAD_OF_MOVE
- [mod_mariadb] mariadb_dsn: Coverity 1546237 COPY_INSTEAD_OF_MOVE
- [mod_mariadb] mariadb_send_query: Coverity 1518917 Calling risky function
- [mod_opus] Fix status returned by switch_opus_decode(). Should be SWITCH_STATUS_FALSE instead of SWITCH_STATUS_NOOP. Add a unit-test.
- [mod_sofia] Set missing CF_3PCC flag
- [mod_v8] SayPhrase: Coverity 1546153 COPY_INSTEAD_OF_MOVE
- [mod_vlc] Resolve double mutex lock
- [UTIL] Generate reproducible source archive.
Installation guides
FreeSWITCH v1.10.11 Release
This is an important release containing critical security fixes and stability improvements. We encourage all users to upgrade to v1.10.11 whenever possible.
Release Notes - FreeSWITCH - Version 1.10.11
Enhancement
- Bump sofia-sip library requirement to version 1.13.17
Bug
- [contrib/timezone-gen] Fix timezone gen
- [core] Coverity 1325269 Dereference before null check
- [core] Coverity 1364946 Unchecked return value
- [core] Coverity fixes
- [Core] Coverity: 1024552 Logically dead code
- [Core] Coverity: Dereference before null check
- [Core] Coverity: Use of 32-bit time_t
- [core] Fix flopping routes on ICE negotiation
- [Core] Fix implicit conversion from enumeration type 'switch_odbc_status_t' to different enumeration type 'switch_status_t'.
- [core] Fix missing 192 key lengths
- [core] JB audio: check for jb type and silence some debug.
- [Core] Reject DTLS packets coming from a source different than the current ICE negotiated path.
- [libvpx] Fix bug with smaller width bigger size
- [libvpx] VP8: disallow thread count changes
- [mod_conference] Avoid a race in member->read_impl access
- [mod_conference] Remove static from cJSON vars in conference_jlist
- [mod_pgsql] Coverity: 1227660 Logically dead code
- [mod_sofia] BYE Reason header was limited in length.
- [timezones] Update timezones to version 2023c.
- misc readme updates
- updates for the Debian Dockerfile
Installation guides
FreeSWITCH v1.10.10 Release
This is a major release containing critical security fixes, adding Debian 12 Bookworm, OpenSSL 3 and FFmpeg5 support. As part of our continuing dedication to code quality, we have resolved static analysis bugs for MacOS in all of FreeSWITCH core and in most modules. We encourage all users to upgrade to v1.10.10 whenever possible.
Release Notes - FreeSWITCH - Version 1.10.10
Enhancement
- [Build-System] Add Debian 12 Bookworm support
- [Build-System] Update libks and signalwire-c requirements to 2.0
- [Build-System] Windows: Update OpenSSL to 1.1.1t, libpq to 10.23, curl to 7.88.0, rabbitmq-c to 0.13.0. Allow using build numbers and bump libks version requirement to 1.8.2_1 and signalwire-c to 1.3.2_1 compiled with openssl 1.1.1t
- [Core, mod_cidlookup, mod_curl, mod_httapi, mod_http_cache, mod_kazoo, mod_shout] Add new switch_curl_mime APIs replacing switch_curl_process_form_post_params() and make code be compatible with libcurl>=7.87.0
- [core, mod_opus] bring more fmtp params to core (offer/answer).
- [core, mod_opus] more elastic jitterbuffer with Opus codec
- [core,mod_av,unit-tests] Make transition to core packetizer
- [Core] Add new cause REJECT_ALL
- [Core] Add new switch_channel_get_variable_strdup() and switch_channel_get_variable_buf() APIs that avoid allocating channel variables in a session's memory pool.
- [core] Add switch_core_media_get_engine() and switch_core_media_get_codec() functions
- [Core] OpenSSL 3 support
- [core] switch_ivr_originate set originate endpoint used
- [mod_amqp] Event subclass support
- [mod_av] Add FFmpeg 5.1.3 support on Windows.
- [mod_av] Migrate to FFmpeg 5.1
- [mod_conference] Add flag to destroy the conference only when all mandatory members disconnect. And set endconf to end the conference when any member with the flag disconnects
- [mod_rtmp] Add OpenSSL 3 support.
- [mod_shout] Enable module in Dockerfile example.
- [mod_shout] Replace deprecated meta functions with shout_set_meta()
- [mod_sofia] Ignore user agent for display update when channel variable update_ignore_ua is true
- [mod_sofia] Map SWITCH_CAUSE_REJECT_ALL cause to 603
- [mod_verto] Add context into msg event header
- Bump sofia-sip library requirement to version 1.13.15
- Create SECURITY.md
Bug
- [Build-System] Update commit hash of SpanDSP on Windows.
- [Configuration] Update freeswitch.xml
- [core, mod_cidlookup] Free memory allocated via strdup
- [Core, mod_mariadb, mod_ilbc] Fix build on gcc 12.
- [Core, mod_opus] Fixes.
- [core,libyuv,modules] Fix function declarations without a prototype
- [core,miniupnpc,modules] Fix not used variables
- [Core] check_ice: sanitize second field of the candidates. Add new switch_is_uint_in_range() API.
- [core] Coverity fixes
- [Core] Fix greedy_sort for codecs containing different fmtp
- [Core] Fix missing MEDIA_PARAMS in message_names.
- [Core] Fix missing mutex unlock in switch_ivr_dmachine_ping()
- [Core] Fix possible deadlock in switch_core_media_set_codec()
- [Core] Fix race condition of session_table hash in switch_core_session_request_uuid()
- [Core] Fix switch_console.c for Galera Mariadb cluster
- [Core] Fix switch_core_sqldb_destroy() function declaration.
- [Core] ICE: fix wrong buffer size being passed and unitialized buffer
- [core] Opus RTP timestamp: adding an exception on RTP session creation.
- [Core] Remove unused count variable from switch_core_session_execute_exten()
- [Core] Sanitize match count during negotiation
- [Core] switch_curl_process_mime(): fix build on older systems.
- [core] Use auto DH params with openssl3
- [Documentation] Fix typo in README.md
- [mod_amqp] Coverity CID 1468426 (Resource leak)
- [mod_amr] coverity CID 1395603 (Unsigned compared against 0)
- [mod_av] Coverity CID 1500320 (Resource leak)
- [mod_avmd] coverity CID 1395555 (Dereference before null check)
- [mod_avmd] Coverity fixes
- [mod_callcenter] Fix stale agents and UUID broadcasts
- [mod_commands] add completions for fsctl api_expansion and sync_clock_when_idle
- [mod_commands] Fix and improve coalesce function
- [mod_commands] Fix leaking session readlock in uuid_capture_text
- [mod_conference] handle personal canvas with vmuted member
- [mod_dialplan_asterisk] Coverity CID 1214207 (Resource leak)
- [mod_dptools] coverity CID 1468646 (Unsigned compared against 0)
- [mod_enum] Fix use-after-free if creating resolver from file failed
- [mod_erlang_event] coverity CID 1500239 (Uninitialized scalar variable)
- [mod_event_multicast] Coverity CID 1468504 (Resource leak)
- [mod_event_multicast] Few fixes
- [mod_imagick] Coverity CID 1500258 (Resource leak)
- [mod_java] Coverity CID 1320752 (Resource leak)
- [mod_java] Coverity CID 1320753 (Resource leak)
- [mod_kazoo] Coverity fixes
- [mod_ladspa] Added activate/deactivate support.
- [mod_logfile] add logfile open error log and fixes a missing \n
- [mod_mariadb] Fix "DeadLock. The retries are over." message.
- [mod_opus] coverity CID 1320733 (Result is not floating-point)
- [mod_opus] Fix buf scope in switch_opus_decode().
- [mod_opus] fix configuration glitches (switch_true() instead of atoi()).
- [mod_opus] fix samples_per_packet for 8khz, 16khz, 24khz.
- [mod_opus] show uuid in ERROR/DEBUG logs.
- [mod_opusfile] coverity CID 1468424 (Missing break in switch)
- [mod_opusfile] Fix missing rdlock unlock in switch_opusfile_open()
- [mod_pgsql] Coverity CID 1468401 (Resource leak)
- [mod_png] Fix unexpected png video blocked read
- [mod_portaudio] coverity CID 1024263 (Dereference before null check)
- [mod_python3] Fix build on Python 3.10+
- [mod_radius_cdr] Coverity CID 1395529 (Resource leak)
- [mod_rayo] Coverity CID 1395579 (Resource leak)
- [mod_say_en] change epoch to 64 bit int
- [mod_signalwire] Make this module working with libks and signalwire-c in versions 2.0
- [mod_skinny] Fix build on Debian 12: error: array subscript 'skinny_message_t {aka struct skinny_message}[0]' is partly outside array bounds
- [mod_sofia] coverity CID 1468496 (Unchecked return value)
- [mod_sofia] Coverity fixes
- [mod_sofia] fix sofia_glue_get_extra_headers memory leak
- [mod_sofia] Randomize OPTIONS Ping interval
- [mod_sofia] Remove non-implemented verbose feature
- [mod_spandsp] Coverity CID 1024263 (Dereference before null check)
- [mod_translate] Coverity CID 1301006 (Resource leak)
- [mod_v8] Coverity CID 1468570 (Resource leak)
- [mod_verto] Coverity CID 1320754 (Resource leak)
- [mod_verto] Coverity fixes
- [mod_verto] Fix function declarations without a prototype
- [mod_verto] Include libks/ks.h instead of ks.h
- [mod_xml_curl] Coverity CID 1468413 (Resource leak)
- [mod_xml_rpc] Coverity CID 1294469 (Resource leak)
- [mod_xml_scgi] Coverity CID 1468595 (Resource leak)
- [Unit-tests] Fix possible overflows and an undefined variable in the test framework.
- [xmlrpc-c] Fix MacOS build
Installation guides
FreeSWITCH v1.10.9 Release
This is an important release containing security fixes and stability improvements.
Release Notes - FreeSWITCH - Version 1.10.9
Enhancement
- [Build-System] Improve build time on Windows: Do not download a pre-compiled binary if it's found in a folder pointed by the FreeSWITCHBuildCachePath environment variable.
- [Build-System] Update libks to 1.8.2 and signalwire-client-c to 1.3.2 on Windows
- [Build-system] Update libks version requirement to 1.8.2
- [Build-System] Update SQLite to 3.40.0 on Windows
- [Core] Remove deprecated SWITCH_STACK_NODUP flag. Change switch_event_add_header_string() behavior to always dup.
- [Core] SWITCH_STACK_NODUP flag is deprecated and will be soon removed. Introduce switch_event_add_header_string_nodup() API.
- [core][mod_sofia] remove ZRTP (deemed obsolete).
- [Docs] Update get-started link in README.md
- [mod_python3] Create an event on python_fetch()
- [mod_sofia] New chanvars for inbound multiple header identity
- [mod_sofia] Parse extra headers on reINVITE
- Bump sofia-sip library requirement to version 1.13.12
Bug
- [Build-System] Disable static build by default on Linux.
- [Build-System] Fix build on Windows 11: yasm tool compiled for x86 does not work on x64 system. Download yasm.exe 64bit instead.
- [Build-System] Fix MD5 on Windows. Add a unit-test.
- [Build-System] Fix NSIG redefinition issue.
- [Configuration] Use : not , in rtp_secure_media
- [Core] Blind pass at using a rwlock for chat_hash
- [Core] Fix crash in enterprise originate: memory fence the handles.
- [Core] Fix false-positive illegal memory access detection in switch_console_complete()
- [core] Fix wrong reason code for group call
- [Core] switch_mprintf: Increase the size of loop variables in the printf() implementation. Add unit-tests disabled by default.
- [mod_http_cache] Fix leaking curl handle in http_get()
- [mod_logfile] Continue renaming if a logfile doesn't exist
- [mod_python3] Fix compiler warnings
- [mod_smpp] Fix use of switch_event_add_header_string with SWITCH_STACK_NODUP.
- [mod_verto] Limit websocket payload size to 1000000.
- [mod_xml_curl] Fix leaking event in xml_url_fetch()
- [Packaging] Shared libraries instead of static in freeswitch devel CentOS package.
- [Unit-tests] mod_sofia: avoid duplicate symbols on macos.
Installation guides
FreeSWITCH v1.10.8 Release
This is the minor release containing important bugfixes and stability improvements.
Release Notes - FreeSWITCH - Version 1.10.8
Enhancement
- [Build-System] Update libks to 1.8.0 on Windows.
- [core] Add support to phrase play-file to set a volume attribute
- [Core] Allow switch_buffer_write() to fill in a buffer with zeros. Add switch_buffer_zero_fill()
- [core] make switch_core_media_prepare_codecs() more unit-test friendly.
- [core] remove apr-util from tree
- [Docs] Add Debian 11 Dockerfile example showing how to build FreeSWITCH without repo.
- [fs_cli] Add: -s key adding log events filter UUID on fs_cli startup
- [mod_amqp] add support for ssl connections
- [mod_av] Avoid using 16384 stack (or heap) bytes in av_file_write(). Remove ff_input_buffer_padding static variable.
- [mod_conference] Add APIs to set/get conference variables
- [mod_conference] Set conference vars from core/channel variables
- [mod_dptools] Implement disable_system_app_commands global variable to make system and bgsystem dialplan apps disabled at run time.
- [mod_json_cdr] add timeout param.
- [mod_pgsql] Add support for postgresql 14
- [mod_sofia] Add autocomplete options to status profile command
- [mod_sofia] Add Fanvil to vendors allowed to update.
- [mod_sofia] Caller ID name in contact
- [mod_sofia] on call term optionally ignore Q.850 Reason
- [mod_sofia] Provide retry time for failed and waiting registration
- [mod_voicemail] add option to skip goodbye
- [Sounds] Add new sounds to en-us-callie and correct en-us-allison 40.wav and 60.wav
- [Testing] Enable repo auth on Drone CI
- [Testing] Enable scan-build 11 on Drone CI
- [Unit-tests] Improve back traces reported by ASAN
- Remove apr utils and rename apr
Bug
- [apr] Fix dead nested assignments
- [Build-System] Add better error reporting to configure when libks or signalwire-client are missing and mod_verto or mod_signalwire enabled.
- [Build-System] Add libswscale-dev debian package to the debian_min_build.sh
- [Build-System] Add signalwire.conf.xml to the freeswitch.spec
- [Build-System] mrcp: cleanup freeswitch.spec
- [Build-System] Windows: Fix APR build dependency in unimrcp and pthread dependency in libshout.
- [build] fix postgres detection on osx
- [build] skip checking unused execinfo.h
- [Configuration] Add vanilla autoload_configs signalwire.conf.xml
- [Configuration] Remove jingle_profiles
- [core, mod_sofia] add some extra checks when creating the digest.
- [Core] Avoid using insecure sqlite3_enable_load_extension when SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION is available.
- [Core] Change values for switch_call_cause_t to avoid SIP causecode collissions
- [core] extend count of acl entries (per SOFIA_MAX_ACL).
- [core] fix "--disable-libyuv"
- [core] fix build SWITCH_BYTE_ORDER == __BIG_ENDIAN
- [core] fix compile error with gcc 11.1
- [Core] Fix dead nested assignments
- [core] Fix jitter buffer- it is not truncating frames properly. It's also overflowing the node packet body and is copying the packet body twice.
- [core] fix loglevel - switch_ivr_phrase_macro_event()
- [core] fix macOS build when missing CRYPTO_mem_ctrl
- [core] fix memory leak in switch_core_asr_feed
- [Core] Fix possible race condition between locking a session and reading it's flags in switch_core_session_read_lock() and switch_core_session_read_lock_hangup().
- [core] fix set rtp flag for rtcp events after flags zeroed out.
- [Core] Fix switch_core_media_patch_sdp parsing m=text wrongly
- [Core] Fix switch_event_base_add_header leaking memory when headers are with indexes. Add a unit-test.
- [Core] Fix use of private headers.
- [Core] Fix wrong switch_odbc_skip_autocommit_flip function declaration.
- [core] Handling RTCP MUX resulting in gaps
- [Core] ODBC: Add odbc-skip-autocommit-flip switch param.
- [Core] RFC 3264 says once we assign a payload number to a dynamic codec, we are stuck with it.
- [core] RTP: a media timeout fix + add pcap based-unit tests.
- [core] RTP: remove unfulfillable conditions involving timer. add missing LF to DEBUG log line.
- [Core] scan-build: Fix false-positive bad free by switch_must_realloc() in switch_xml_proc_inst()
- [core] set completion cause upon failed recording
- [Docker] Correct keyserver and key id in the Dockerfile
- [Docker] Fix broken gpg --verify and Dockerfile cleanup
- [esl] Fix dead nested assignment in esl_recv_event()
- [iksemel] Fix potential memory leak in iksroster
- [libvpx] configure.sh erroneous make warnings starting with macOS 11.5.1
- [libvpx] scan-build: avoid dereference of null pointer
- [libvpx] scan-build: prevent division by zero in vpx_int_pro_row_c()
- [miniupnpc] Fix build on Debian Bullseye
- [mod_amqp] Fix memory leaks on command queue name and parsing configure file
- [mod_av] Fix dead nested assignments
- [mod_av] FIX parse config param "profile" and "level"
- [mod_av] Remove unused buf variable in av_file_write
- [mod_avmd] fix formatting to match coding standards
- [mod_callcenter] Fix dead nested assignments in cc_config_api_function
- [mod_callcenter] Fix SWITCH_EVENT_PRESENCE_PROBE unbind
- [mod_commands] Fix dead nested assignments
- [mod_conference] file descriptor stays open
- [mod_conference] Fix dead nested assignments
- [mod_conference] Fix memory consumption and Media flow direction issue.
- [mod_conference] Fix regression made by previous commit when fixing memory consumption.
- [mod_distributor] Reload message should be same as others (+OK instead of +ok)
- [mod_dptools] Fix dead nested assignments.
- [mod_enum] Fix dead nested assignments
- [mod_event_multicast] Fix buffer overflow on module load.
- [mod_event_socket] fix strcmp crash
- [mod_http_cache][unit-tests] remove timestamp unit-test
- [mod_local_stream] fix path with ".loc" file extension.
- [mod_lua] fix json encoding of lua number string
- [mod_managed] Fix build in Visual Studio 2022
- [mod_opusfile] add opc_encoder_drain before destroying handle
- [mod_opusfile] fix type errors
- [mod_pgsql] Fix build by using PG_VERSION_NUM provided by libpq instead of using POSTGRESQL_MAJOR_VERSION detected by freeswitch configure.
- [mod_say_de] Let de_say_time handle short_date_time type
- [mod_say_hr,hu,pl,sv] Fix dead nested assignments
- [mod_shout] Replace space with tab in Makefile.am
- [mod_sofia] Add db-spin-up-wait-ms profile parameter.
- [mod_sofia] fail set up of STIR/SHAKEN verification service if configured CA directory fails to load
- [mod_sofia] Fix dead nested assignments
- [mod_sofia] Fix fs_path to keep
<>so that sofia doesn't put the uri parameters as header parameters. Handle multipleRecord-Route/RouteandPathheaders. - [mod_sofia] Fix handling of late offer
- [mod_sofia] Fix potential memory leak in sofia_reg_handle_sip_r_challenge()
- [mod_sofia] Fix PRESENCE_PROBE firing on rejection
- [mod_sofia] Fix regression in RFC-8760.
- [mod_sofia] Put more comments into the code explaining that we include switch_ssl.h into sofia_reg.c because of SHA-512-256 (RFC-8760)
- [mod_sofia] Unit-test: Fix strcmp null argument.
- [mod_sofia] unit-tests: Give mod_sofia time to spin up profile threads on load. Remove some fst_requires().
- [mod_ssml] Add deps rule to the Makefile.am
- [mod_test] Increase tts_time unit-test's duration window.
- [mod_unicall] Fix array overflow
- [mod_v8] Fix dead nested assignments
- [mod_verto] Fix dead nested assignments
- [mod_verto] fix potential memleaks at init.
- [mod_video_filter] Fix dead nested assignments
- [mod_vmd] fix shutdown function not being called
- [mod_voicemail] fix vm_fsdb_msg_list
- [mod_voicemail] Fix voicemail ignoring vm-a1-hash
- [mod_voicemail_ivr] Fix array overflow
- [mod_xml_ldap] Fix potential memory leaks in xml_ldap_search()
- [mod_xml_scgi] Fix dead initialization in mod_xml_scgi_shutdown()
- [stb] Fix dead nested assignments in stbi__tga_load()
- [Unit-tests] Add --enable-fake-dlclose to .drone.yml
- [Unit-tests] Fix unused function in switch_rtp_pcap
- [Unit-tests] Improve stability of some tests.
- [Unit-tests] Replace fst_requires with fst_check in mod_sofia unit tests. Increase timeout.
- Fix dead nested assignments in various modules
Installation guides
https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes
FreeSWITCH v1.10.7 Release
This is a major release with more than 300 changes containing fixes for 5 security advisories adding support for Debian 11, mod_python3 and a lot of bugfixes. Debian 8 support has been dropped. Freetdm has been moved out of tree.
Release Notes - FreeSWITCH - Version 1.10.7
Enhancement
- STIR/SHAKEN
- [Build-System, Packaging] Bump sofia-sip library requirement to version 1.13.6
- [Build-System] Add --enable-heap-profiler and --enable-cpu-profiler configure flags.
- [Build-System] Add Bullseye to the Debian packaging
- [Build-System] Enable applications/mod_test build by default.
- [Build-System] Fix switch_packetizer headers and add it to the build.
- [Build-System] Remove freetdm from the FreeSWITCH tree. Use out-of-tree module https://github.com/freeswitch/freetdm instead.
- [Build-System] Rename package format-mod-opusfile to format-opusfile on CentOS
- [Build-System] Sign FreeSWITCH MSI Package with the Code Signing Certificate on Windows.
- [Build-System] Sign FreeSWITCH modules with timestamp on Windows when new version is released.
- [Build-System] Update libsrtp to 2.4.0
- [Build-System] Use a fresher gcc on RHEL based dists
- [Build-System] Windows: Update OpenSSL to 1.1.1l, libpq to 10.18, curl to 7.78.0, libks to 1.7.0, signalwire-c to 1.3.0, rabbitmq-c to 0.11.0
- [Core, mod_commands] Add posix_spawn replacement for the system call. Add unit-tests.
- [Core, mod_commands] Implement memory allocation statistics by adding the "memory" API command.
- [Core, mod_hash] Add two APIs switch_core_hash_insert_alloc_destructor and switch_core_hash_insert_dup_destructor. Code cleanup in mod_hash. Add unit-tests.
- [Core] Add SEND_RTCP_MESSAGE event and a unit-test.
- [Core] Add check for recovery_skip_announcement_type_applications channel variable, change default behavior to not skip announcement type apps on recovery.
- [Core] Add exclude-error-log-from-xml-cdr config parameter and exclude_error_log_from_xml_cdr global variable.
- [Core] Add new switch_core_hash_insert_dup_auto_free() API
- [Core] Add new switch_core_hash_insert_pointer(switch_hash_t *hash, const void *data) API to be able to insert data into a hash with an auto-generated key based on the data pointer. Cleanup switch_loadable_module_process() to not generate hash keys for stored events itself. Add unit-test.
- [Core] Add partial Asr support
- [Core] Add switch_digest(), switch_digest_string() APIs. Add unit-tests.
- [Core] Add switch_safe_atol() and switch_safe_atoll() functions. Add a unit-test.
- [Core] Add systemd sd_notify support
- [Core] Added state to determine if speech, suppress digit timer if state true
- [Core] Implement NDLB_line_flash_16 channel variable. Set to true to enable deprecated 0-16 back (rfc4733)
- [Core] Prevent write after free into heap when calling switch_core_destroy_memory_pool()
- [FreeSwitchConsole] Fix build with Visual Studio 2022
- [Packaging] Require specific libsofia-sip-ua0 version when installing FreeSWITCH binary packages.
- [Testing] Enable scan-build-7 on Drone CI
- [Testing] Move Drone artifacts to signalwire.cloud
- [Unit-tests] Add --enable-fake-dlclose configure flag so modules are not unloaded and ASAN could give more info and not just .
- [Unit-tests] Add a unit-test for the compact form and full form of the Identity header.
- [Unit-tests] Build sofia-sip on the fly on Drone CI so backtraces are more informative in ASAN reports.
- [Unit-tests] Report test failure details as they happen. Fix issue where fst_xcheck definition did not allow its use inside conditional statements.
- [build] improve configure test for openal
- [core, mod_av] move switch_packetizer to core
- [core, mod_commands, mod_verto] small tweaks to cache stuff to allow clear from verto and allow no domain to imply the default domain
- [core, mod_commands] Execute command under shell when using spawn in switch_system().
- [core, mod_console, mod_graylog2] Add sequence to logs to preserve order when timestamp is not precise enough.
- [core, mod_verto] add visibility filter to verto
- [core, mod_verto] check for camera change and trigger new constraints
- [core, mod_verto] double udp buffer for audio, add verto command for video refresh
- [core, mod_verto] remove CF_VIDEO_ONLY and pay attention to the streams instead and add CF_NO_RECOVER flag for verto
- [core] Add SMBF_PAUSE media bug flag to pause an individual media bug.
- [core] Add app_disable_expand_variables channel variable. When true, application args are not expanded by FreeSWITCH and are passed to the application unchanged.
- [core] Add switch_core_session_set_external_id() which lets you define an additional identifier that you can use in switch_core_session_locate().
- [core] Add switch_ivr_record_file_event() and handle execute_on_record_start/execute_on_record_stop
- [core] Add switch_log_meta_printf() and switch_log_meta_vprintf() to allow JSON metadata to tag along with the log message.
- [core] Add type checking for SWITCH_CHANNEL_SESSION_LOG and SWITCH_CHANNEL_UUID_LOG macros.
- [core] Do not log ERROR in switch_ivr_record_session() if media bug failed due to hangup
- [core] Improve session recording thread performance.
- [core] Remove 255 byte limit to core ASR param stored in module name
- [core] Save position of XML opening tag '>' and XML closing tag '<' in switch_xml_parse_str().
- [core] Update switch_ivr_record_session_event() to check event vars for RECORD_STEREO, etc
- [core] add SCSC_SHUTDOWN_CAUSE
- [core] add a flag to tell when video media bugs that touch the write stream are active
- [core] add core media getter (it gets the RTP session, handy for unit-testing).
- [core] add idle cpu to log lines
- [core] add jpg data_url support with stb_image
- [core] add new function to theorize the dimensions of an image if it were to be resized to fit inside another image
- [core] add new prompt functionality to ask for pin over dialogbox
- [core] add peer uuid to originate log
- [core] add stb_image to read more supported picture formats
- [core] add stb_image_write supported image write
- [core] add support for resolving (and ignoring) mdns style .local addresses in ice candidates
- [core] add switch_filecmp
- [core] add switch_img_read_png_from_memory
- [core] add switch_thread_pool_wait
- [core] add unlockable youtube resolver in the core. use global variable ${youtube_resolver} to set a cgi that takes url= param to translate youtube urls into real stream urls
- [core] allow external ID to be same as the session UUID
- [core] and core video alpha patch test code
- [core] change estimator CUSUM design params for loss to reduce oscillations. rename var.
- [core] don't decode strings with no encoding in them
- [core] don't double set caller-id
- [core] don't hangup call on SRTP errors (new default behaviour)
- [core] expand vars on execute_on and api_on
- [core] fix leak in unit test
- [core] fix long sql stmts may be skipped, introduced in 2e88c67 in 2009
- [core] fix memeory leak when font not found
- [core] fix patch alpha on alpna image
- [core] fix possible looping recover
- [core] fix stbi scan-build warning
- [core] flush all the rtp on transfers
- [core] gen keyframe on new recording
- [core] make auto mean cpu * 3 / 2
- [core] print SRTP lib version at init.
- [core] reduce waits in sqldb
- [core] some mods for file playback to get proper bitrate and timing
- [core] some more hardening work
- [core] update stb image lib to latest master
- [core] url decode video render text
- [core] use the more efficient mult-byte tolower/toupper in the helper func
- [core] speed up call setup
- [mod_amqp] Increase max command size
- [mod_av] Don't require .ext for streaming rtmp:// and rtsp:// formats
- [mod_av] don't exit on decode errs just continue
- [mod_av] dont leak avformat context in error cases
- [mod_av] fix interrupt callback is not passed down to the hls context in the first open_input
- [mod_av] fix leak (#211)
- [mod_av] fix value never read
- [mod_av] make key_frame_min_freq work to prevent generate key frames too frequently
- [mod_av] play video without decode
- [mod_av] print I-frame
- [mod_av] support rtmps
- [mod_conference] Add conference::maintenance conference-heartbeat.
- [mod_conference] Members are searchable by var in more APIs
- [mod_conference] Skip dtmf dist to members with skip-dtmf
- [mod_conference] json: MFLAG_DIST_DTMF
- [mod_conference] make conference breakable
- [mod_curl] Added PATCH method, add insecure and secure options to verify SSL certs, add proxy option.
- [mod_curl] look for cacert in certs dir
- [mod_cv] Replace deprecated definitions and update configure.ac to check renamed opencv4.pc on Debian Bullseye.
- [mod_dptools] add debug_media app
- [mod_event_multicast] Add unicast and IPv6 support, enhanced reloadxml support.
- [mod_event_multicast] Normalize whitespace/tabs
- [mod_fifo] adding 'noans' and 'early' call status options and dtmf '0' disable config settings option
- [mod_fsv] add no_video_decode to support read video rtp packets without decode
- [mod_fsv] add video read support to fsv file format
- [mod_fsv] fix channels regression from 94eb8ac
- [mod_fsv] fix leak in read failure scenario
- [mod_httapi, mod_http_cache] pass through seek values tracked in handle on proxy file handles
- [mod_imagick] [mod_png] small tweaks for pdf
- [mod_imagick] improve log line
- [mod_loopback] Add video support to null endpoint
- [mod_openh264, mod_av] add avcodec and openh264 debug
- [mod_opusfile] add ogg/opus streams, fix Makefile for encoding.
- [mod_python3, ESL py3mod] Add Python3 support.
- [mod_signalwire] add configurable stun port
- [mod_signalwire] add token-reset subcommand to the signalwire api.
- [mod_sofia] Add RFC8760 sha (256, 512) UAS
- [mod_sofia] Add TLS v1.3 support.
- [mod_sofia] Add a unit-test checking that sofia-sip doe...
FreeSWITCH v1.10.6 Release
This is the major bug fix release containing important stability improvements. We encourage all users to upgrade to v1.10.6 whenever possible.
Release Notes - FreeSWITCH - Version 1.10.6
Enhancement
- [Build-System] Check requirements when generating tarballs.
- [Build-System] freeswitch.spec update
- [build] add addr sanitizer to out of tree mod stubs
- [build] Add missing checks to libvpx build system for macOS 11.
- [core] add event::merge
- [core] Allow other (D)TLS Curves/Groups beside P-256
- [Core] Create x509v3 certificates
- [core] debug socket sendto
- [core] Enable MSRP over IPv6
- [Core] Enable use of DTLSv1_2 on Windows.
- [core] Exclude RFC-6598 CGNAT private space from wan.auto acl
- [core] support convert to ARGB_LE video format
- [Core] switch_core_port_allocator: Replace getaddrinfo() (may get stuck) with switch_sockaddr_new() and fix IPv6.
- [core] Update switch_ivr_enterprise_originate() to accept optional switch_dial_handle_list_t instead of dialstring.
- [Default-Configuration] Force sip subscription requests to require authentication.
- [FreeSwitchConsole] -version option enabled in windows + read git revision
- [mod_amr] introduce new cfg setting force-oa to change between OA/BE when originating, show session in debug logs, update configs
- [mod_amrwb] add cfg setting to switch between OA/BE when originating
- [mod_amrwb] show the session in debug logs.
- [mod_dptools] early video decode and debug
- [mod_expr] log errors
- [mod_http_cache] Generic HTTP API Authorization header support
- [mod_kazoo] add kz_contact api
- [mod_pgsql] Use PQcmdTuples() to get number of effected rows to support UPDATE and INSERT without RETURNING.
- [mod_rayo] Enable -fno-common compilation
- [mod_signalwire] Upgrade code to be able to work on newer libks and signalwire-c v2.0 when released
- [mod_sms] add final chat function
- [mod_sofia] Add back sip Identity header into sip_i_identity variables in sofia_parse_all_invite_headers
- [mod_sofia] add call-id to log line to link with session uuid
- [mod_sofia] Add preliminary handing for SHAKEN/STIR via SIP Identity Header
- [mod_sofia] Verification of the wss.pem certificate in mod_sofia application code. Display correct reason why sofia profile failed to create
- [mod_test] add tts mock
- [mod_xml_curl] Allow XML_CURL_MAX_BYTES to be configured at runtime
- [Testing] Move Drone artifacts to signalwire.cloud
- [verto-client] move verto client to github.com/freeswitch/verto-client
- Fix some typos (most found by codespell)
Bug
- OSX build fixes
- [apr] fix find_if_index for BSDs/mac
- [Build-System] Add src/include/switch_swigable_cpp.h requirement to make swigall
- [Build-System] Fix build with MSBuild.
- [Build-System] Remove mod_freetdm from spec file, fix compile errors on CentOS
- [build] fix compilation under musl 1.2
- [build] fix configure checks for ipv6 on latest osx
- [build] fix libpq configure check to use flags from autoconf/pkg-config
- [configuration] Copy TLS ciphers from vars.xml even in Vanilla External
- [Core] Add new switch_core_session_try_reset() API to fix a deadlock for the case when two threads want to set session codecs.
- [Core] Adding fix for switch_ivr_originate to not copy group_confirm variables to the channel
- [Core] Capture return value of 2nd call to LoadLibraryEx and add a third call to widen the search to the module in switch_dso_open().
- [Core] Databases: Fix duplicate key name 'recovery3'
- [core] DTLS PEM validation/creation tweaks and fix leaks in fixed pem path.
- [core] eavesdrop: init L16 codec at right ptime in certain conditions.
- [core] eavesdrop: reduce lock contention, fix error condition + enable eavesdrop stereo .
- [Core] execute_on_audio_change on codec change
- [Core] fix asr resample out data len
- [Core] Fix buffer race in switch_ivr_eavesdrop_session()
- [Core] Fix codec ready checks in switch_core_session_read_frame()
- [Core] Fix crash while writing text_frame in conference
- [Core] Fix double close of a socket in switch_rtp
- [Core] Fix hangup race in recording_follow_transfer.
- [core] Fix ICE candidate priorities
- [core] fix leak in http request parser
- [Core] Fix leak of switch_event_header_t in switch_event_base_add_header(). Code cleanup.
- [Core] Fix leaking codec, timer and abuf in switch_ivr_play_file() in the case of failing switch_ivr_phrase_macro() or switch_ivr_speak_text()
- [Core] Fix leaking stream in switch_channel_expand_variables_check()
- [Core] Fix leaking stream in switch_event_expand_headers_check()
- [Core] Fix leaks in switch_ivr_park when initially no rate.
- [Core] Fix memory leak of local_var_event in switch_ivr_originate() when caller_channel is not ready.
- [Core] Fix multiple missing session unlocks in switch_core_media.c
- [core] Fix ODBC column size performance issue
- [Core] Fix possible memory leak of switch_core_session_message_t in switch_core_session_queue_indication()
- [Core] Fix race between switch_ivr_park_session() and the state machine. switch_core_session_run() wants to clear the CF_TRANSFER flag on state change while parking sets the flag.
- [Core] Fix reference counter lock order when protect/unprotect interface.
- [Core] Fix SDP parsing causing segfault.
- [Core] Fix the null char in truncated value returned by switch_b64_decode
- [Core] Fix wrong switch_assert expressions in switch_core_session_write_frame()
- [Core] Fix XML generation
- [Core] Fixed issue while setting mode on reinvite or outbound direction
- [Core] Hangup call instead of crashing system on SSL_CTX_new failure. Improve logging.
- [Core] Improve logging in odbc with large column sizes
- [core] jira moved to github
- [Core] Make switch_core_media_set_codec() and switch_core_media_set_video_codec() thread-safe so there is no race when a session's codec is initiated by different threads simultaneously.
- [core] native tap fix.
- [Core] ODBC: Fix large column logic and improve error handling.
- [core] Remove unused buffers and mutexes in switch_core_session. Remove destruction of resamplers that will already be destroyed by switch_core_session_reset().
- [Core] Reuse caller profile
- [core] rtp: fix #ifdef DEBUG_TS_ROLLOVER
- [Core] Scheduler: Fix race between switch_scheduler_add_task() and task_thread_loop(). Add new switch_scheduler_add_task_ex() method.
- [Core] switch_core_media: Correct srtp_remote_audio_crypto_key variable
- [Core] switch_ivr_set_user_xml: Buffer is wrongly truncated when it's small in get_prefixed_str()
- [gentls_cert] Update message digest
- [libesl] Fix leak of esl_event_header_t in esl_event_base_add_header(). Code cleanup.
- [mod_amr] handle frame type NO_DATA and add unit test.
- [mod_amrwb] handle frame types SPEECH_LOST and NO_DATA. add unit test.
- [mod_av] enable resampler when sample rate mismatch
- [mod_av] fix memory leak on file playing
- [mod_av] Fix record crash bug
- [mod_av] remove extra space
- [mod_av] Update error message
- [mod_avmd, esl/python] Two build fixups
- [mod_callcenter] fix leak
- [mod_callcenter] Fix use of uninitialized res variable in cc_agent_update()
- [mod_conference] Bridged conference did not wait it's last member before destroy and crashed.
- [mod_conference] Fix conference api saymember wrong output message
- [mod_curl] Avoid passing null pointer value via data parameter of do_lookup_url()
- [mod_dptools] remove duplicated code
- [mod_enum] fix mem leak - ldns_resolver_new() - vanilla cfg.
- [mod_gsmopen] Fix build on Visual Studio 2019
- [mod_httapi] Fix memory leak of dup_creds in httapi_sync()
- [mod_http_cache] crash on HTTP GET with generated AWS v4 signature
- [mod_http_cache] Handle error cases to avoid using uninitialized variables in aws logic.
- [mod_http_cache] Remove duplicate include statements
- [mod_http_cache] Set binary mode when downloading files in Windows
- [mod_httpapi] Fix abs-file-cache-ttl typo
- [mod_lcr] Fix order_by and sql_stream streams leaking in the case of a DB error in lcr_load_config()
- [mod_loopback] Fix new_session leak in the case of a hangup_cause.
- [mod_mongo, mod_redis, mod_voicemail] Fix leaking hash iterators.
- [mod_opus] Do not hangup call on decode error - fix 86a5ee3
- [mod_pgsql] Fix memory leek in the case of an empty string of err_str in pgsql_handle_exec_base_detailed()
- [mod_pgsql] Fix potential hang when calling PQconsumeInput() while checking if db_is_up().
- [mod_pgsql] Prevent a stall of PQconsumeInput().
- [mod_python] Fix PyObject leaks in eval_some_python function
- [mod_say_*] fix possible memory-leak in say_ip()
- [mod_shout] Fix memory leak in do_telecast
- [mod_signalwire] Fix build with newer signalwire-c v2.0
- [mod_sndfile] fix read sndfiles with float data
- [mod_snom, mod_snmp] Replace strncpy with snprintf
- [mod_sofia] Fix memory leaks caused by improper profile destroy. Add a unit-test.
- [mod_sofia] Fix multiple memory leaks in sofia_presence_handle_sip_i_subscribe()
- [mod_sofia] Fix potential leak of uuid in sofia_event_callback().
- [mod_sofia] Fix recovery reinvite issue
- [mod_sofia] fix session log
- [mod_sofia] Fix use of uninitialized network_ip in sofia_handle_sip_r_invite()
- [mod_sofia] Gateways DOWN state introduced a regression: REG gateways in DOWN state could not be killed. NOREG gateways could change state in some conditions. Register and Unregister commands will now error if a gateway is NOREG.
- [mod_sofia] Keep noreg gateways as NOREG, mark unregistered gateways as DOWN.
- [mod_sofia] Prevent crash in sofia_handle_sip_i_state on switch_channel_set_state() when PFLAG_3PCC_PROXY flag is set.
- [mod_sofia] Properly handle nua events came without nua handles.
- [mod_sofia] Protect insertion into profile->reg_nh_hash with a mutex.
- [mod_sofia] Remove 'precondition' from 'Supported:' w/ 100rel
- [mod_sofia] scan-build in sofia_glue_do_invite(): Null po...
FreeSWITCH v1.10.5 Release
This is a minor bug fix release.
Release Notes - FreeSWITCH - Version 1.10.5
Enhancement
- [Build-System] Relocate modules deps in freeswitch.spec
- [Build-System] Use spandsp3 package
- [Packaging] Change maintainer to SignalWire, Inc
Bug
- [Build-System] Only link sofia-sip to core, not all binaries
- [Documentation] Fix parameter definitions in switch_core_media_bug_add()
- [mod-sofia] Fix reINVITE after T38 is rejected
- [mod_verto] Fix modify attended transfer response
Installation guides
https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes