Freeswitch Versions Save

FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unlock the telecommunications potential of any device.

v1.10.11

4 months ago

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

https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/FreeSWITCH-1.10.x-Release-notes_25460878/

v1.10.10

9 months ago

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

https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/FreeSWITCH-1.10.x-Release-notes_25460878/

v1.10.9

1 year ago

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

https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Release-Notes/FreeSWITCH-1.10.x-Release-notes_25460878/

v1.10.8

1 year ago

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 multiple Record-Route / Route and Path headers.
  • [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

v1.10.7

2 years ago

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 does not leak when a profile fails to start.
  • [mod_sofia] Add basic INVITE test
  • [mod_sofia] Add tls-orq-connect-timeout profile parameter so SIP engine could try again sending an outgoing request and when possible - using an alternative address (DNS failover). Add sip_call_tls_orq_connect_timeout channel variable per call to override profile's timeout.
  • [mod_sofia] Adding custom header to refer
  • [mod_sofia] Deprecate the auth-messages profile param by setting it to be enabled by default and introducing the new disable-auth-messages param with a higher priority when set.
  • [mod_sofia] Deprecate the auth-subscriptions profile param by setting it to be enabled by default and introducing the new disable-auth-subscriptions param with a higher priority when set.
  • [mod_sofia] Destroy nua handles to avoid memory pool swell when system is unavailable (busy, paused or reached internal limits)
  • [mod_sofia] Implement maximum receiving requests per second max-recv-requests-per-second profile parameter. (Warning: Behaviour change. New default is 1000 requests per second)
  • [mod_sofia] Include isup-oli parameter on outbound invite when we have value in caller profile
  • [mod_sofia] Set sip_100_uepoch channel variable on initial 100 trying response.
  • [mod_sofia] add contact header in REFER
  • [mod_sofia] add sip_ignore_remote_cid var to ignore remote display update
  • [mod_sofia] add sip_refer_continue_after_reply channel variable.
  • [mod_sofia] don't auto unhold via media format for non-sip
  • [mod_sofia] rfc8760: reorder hash algorithms by priority (strength), no matter the order provided in the cfg
  • [mod_sofia] use different nonce per auth algorithm
  • [mod_spandsp] Add verbose-log-level configuration.
  • [mod_spandsp] Use single log for fax negotiation and page reports.
  • [mod_spandsp] add fax_trace_dir channel variable. When set, it will write spandsp fax trace to one file per fax.
  • [mod_spandsp] set fax_trace_file channel var if a trace file is opened
  • [mod_ssml] Add channel-uuid parameter to the tts:// file format and forward it to the core speech handle as a parameter.
  • [mod_valet_parking] Add valet_parking_orbit_exit_key option
  • [mod_verto] add a way to broadcast an event to one session
  • [mod_verto] add chop-domain undocumented feature to allow FS to ignore @ in username
  • [mod_verto] add debug controls for verto
  • [mod_verto] add exptime to ping and pong and log any hangups as a result of auth expiring
  • [mod_verto] add jsonlist
  • [mod_verto] add log line to detect incorrect login
  • [mod_verto] add new verto command construct basics
  • [mod_verto] add param to have verto send pass over xml_curl
  • [mod_verto] add reattach flag on reconnect to trigger mcu key frame
  • [mod_verto] add some data about the identity of the requestor to json_api requests
  • [mod_verto] add some more log lines
  • [mod_verto] add subscribed channel in events so you can see what subscription string you used
  • [mod_verto] add verto perms commands
  • [mod_verto] add verto.ping
  • [mod_verto] add verto_skip_set_user var to skip set_user in mod_verto
  • [mod_verto] allow re-auth via verto.login
  • [mod_verto] allow vars from dp to pass to verto dialog
  • [mod_verto] auth-expires
  • [mod_verto] check permissions on the more specific event channel for guest users to allow them to subscribe to global events but still get send/don't send permission control on specific conferences
  • [mod_verto] fix reattach on reopen
  • [mod_verto] gen keyframe both ways on re-invite
  • [mod_verto] get the conference to send a keyframe when you reload/attach so the video shows up faster
  • [mod_verto] indicate video fps and size of current layer to client
  • [mod_verto] make verto.attach always an answer and never an offer
  • [mod_verto] more perms checks
  • [mod_verto] move websocket implementation to libks
  • [mod_verto] new changes for verto video features
  • [mod_verto] pass in audio flags
  • [mod_verto] print json debug compact
  • [mod_verto] put vars frorm user lookup into user_vars and protect user_vars
  • [mod_verto] regression from fix for guest seeing non-public rooms
  • [mod_verto] send last known display info on re-attach
  • [mod_verto] smaller jb
  • [mod_verto] verto auth stuff
  • [mod_verto] verto re-invites part 1
  • [mod_verto] verto.announce
  • [mod_video_filter] fix some keyframe stuff and add read:sound and write:sound options
  • [test] add missing file for test
  • [unit-tests] [mod_sndfile] parallelize unit-tests, each audio extension test in its own session.

Bug

  • [Build-System] Allow out-of-tree modules to stay commented out in modules.conf and fix false-positive warnings from module integrity checking when running make install.
  • [Configuration] Fix Brazil daylight’s in xml files
  • [Core, mod_conference] Fixed oscillation in conference AGC processing. Especially during volume reduction processing
  • [Core, mod_sofia] switch_core_media: copy telephony event over on 3rd party response, fix duplicates in SDP, add a unit-test.
  • [Core] Add new switch_channel_set_variable_strip_quotes API, cleanup mod_sofia.
  • [Core] Cleanup sqldb: remove unimplemented io_mutex from switch_cache_db_handle and sql_manager structures
  • [Core] Deprecate RFC 2833 Line flash event code 16 according to RFC 4733
  • [Core] Do not generate SDP media Descriptions with RTP/SAVP transport protocol when no crypto attribute. Add a unit-test.
  • [Core] Don't flip CID on recover if that's done already.
  • [Core] Fix FreeSWITCH crashes caused by race conditions when working with Secure RTP.
  • [Core] Fix ICE and media delay.
  • [Core] Fix MSRP relaying.
  • [Core] Fix a false-positive memory leak detected by scan-build in switch_channel_set_variable_strip_quotes_var_check()
  • [Core] Fix bridge_early_media
  • [Core] Fix crash on removing xml attributes. Add unit test.
  • [Core] Fix database handles infinitely locked in switch_cache_db_database_interface_flush_handles()
  • [Core] Fix dereference of null pointer in switch_ivr_wait_for_answer()
  • [Core] Fix false-positive memory leak in switch_core_set_variable() detected by scan-build
  • [Core] Fix portability for logging last_digit_time in switch_ivr_play_say.c
  • [Core] Fix possible deadlock of an rtp_session in handle_ice()
  • [Core] Fix possible dereference of null pointer in switch_ivr_originate() and switch_ivr_enterprise_originate()
  • [Core] Fix possible memory leak in switch_console_complete()
  • [Core] Fix wrong lock order in switch_user_sql_thread()
  • [Core] Offer all negotiated codecs in 200 OK when receiving re-INVITE without SDP
  • [Core] scan-build: Argument with 'nonnull' attribute passed null in switch_html_strip()
  • [Core] scan-build: Argument with 'nonnull' attribute passed null in switch_loadable_module_load_module_ex()
  • [Core] scan-build: Argument with 'nonnull' attribute passed null in switch_xml_internal_dtd()
  • [Core] scan-build: Fix false-positive use-after-free in switch_xml_free_attr(). Add unit test.
  • [Core] scan-build: Use of zero allocated in switch_xml_str2utf8()
  • [Core] scan-build: fix false-positive memory leak in switch_xml_set_attr_d and switch_xml_set_attr_d_buf
  • [Core] scan-build: fix false-positive use-after-free in switch_xml_internal_dtd()
  • [Core] scan-build: memory leak in switch_xml_user_cache()
  • [Core] sqldb: Fix wrong lock order in switch_cache_db_release_db_handle()
  • [Core] switch_ivr: Restrict the misuse of uuid_hold API. Add switch_hold unit-test.
  • [Core] switch_rtp: fix switch_rtp_set_max_missed_packets logging
  • [Packaging] Fix a conflict between freeswitch-mod-python and freeswitch-mod-python3 Debian packages
  • [Unit-Tests] Fix switch_core_video test to use temporary path for generated files and clean them up. Ignore test runtime dirs.
  • [Unit-test] Use unique port numbers when running mod_sofia tests.
  • [Unit-tests] Fix mac build
  • [Unit-tests] Fix-up usage of sipp in the register_403 unit-test of mod_sofia
  • [apr] error: use of undeclared identifier 'NSIG'
  • [apr] scan-build: Dereference of null pointer in apr_hash_merge()
  • [build] remove generated libs/srtp/config_in.h file and add some git ignores
  • [core] Fix read of uninitialized buffer in switch_simple_email().
  • [core] Fix regression in play_and_collect_input
  • [core] MSRP: fix memleak (ssl)
  • [core] RTP: handle flush for incoming stream with DTX or packet loss.
  • [core] RTP: remove redundant condition when checking payload type of incoming packets.
  • [core] don't hangup call on srtp errors (new default behavior)
  • [core] fix log format string (ASAN Warning)
  • [core] scan-build: Dereference of null pointer (loaded from variable 'flags')
  • [daylight saving]- Fixs wrong daylight saving
  • [freeswitch] Argument with 'nonnull' attribute passed null in reincarnate_protect()
  • [iksemel] Fix memory leak
  • [libdingaling] Fix memory leaks
  • [libsrtp] Fix build on MAC OS
  • [libvpx] configure: macos release independence for sse
  • [libvpx] scan-build: Assigned value is garbage or undefined
  • [libvpx] scan-build: fix false-positive dereference of null pointer
  • [libyuv] Disable scan-build warnings.
  • [mod_amrwb] add cfg setting mode-set-overwrite (it will answer with just one mode-set value) - fixes audio quality issues in mod_conference with some UEs.
  • [mod_av] fix some leaks in error cases
  • [mod_commands] Fix leak of a timer object in timer_test
  • [mod_commands] OpenBSD compat
  • [mod_conference] fix crash when using conference heartbeat
  • [mod_conference] scan-build: Value stored to 'status' is never read - conference_loop_input()
  • [mod_dialplan_xml] Fix possible use after free in parse_exten()
  • [mod_dptools] Fix silence_ms misspelling typo in vad_test command
  • [mod_dptools]: wait_for_silence does not allow the listen_hits parameter to be a value of 0
  • [mod_httapi] Avoid using CURLOPT_WRITEFUNCTION for headers
  • [mod_http_cache] Fix the query string not included for HTTP PUT requests to s3
  • [mod_http_cache] fix race cond at shutdown
  • [mod_kazoo] Fix issues reported by scan-build 7
  • [mod_lua] scan-build: Called C++ object pointer is null (Dbh_test_reactive)
  • [mod_managed] Fix Windows build
  • [mod_opus] add cfg setting to overwrite the fmtp stereo param coming from remote. Eg: incoming SDP has stereo=1 but we want a mono call so we answer with stereo=0.
  • [mod_opusfile] Improvements.
  • [mod_opusfile] add ogg/opus streams, fix Makefile for encoding.
  • [mod_opusfile] protect ogg data buff
  • [mod_opusfile] unit-tests: add timer to fix random failures due to the fact that the decoding callback is not installed immediatelly
  • [mod_opusfile] unit-tests: add timer to fix random test failures due to the fact that the decoding callback is not installed immediately
  • [mod_python3] Fix switch module definition preventing mod_python3 from loading.
  • [mod_python3] Remove deprecated calls.
  • [mod_python3] Replace previously removed deprecated calls
  • [mod_python] scan-build: Assigned value is garbage or undefined
  • [mod_python] scan-build: Called C++ object pointer is null
  • [mod_rayo] mod_rayo returns error exec_conference_api
  • [mod_say_pl] Fix potential memory leak in pl_say_ip()
  • [mod_signalwire] When SignalWire SIP Gateway is in unregistered state it's DOWN and can not be NOREG.
  • [mod_skinny, mod_cdr_mongodb, mod_rayo] Fix Debian 11 build warnings.
  • [mod_sndfile] fix test build on osx
  • [mod_sofia] Calling direct _unref() functions in sofia_event_callback() is unsafe.
  • [mod_sofia] Cleanup sofia_glue_get_host() and make the pool arg be required.
  • [mod_sofia] Destroy nua handles to avoid memory pool swell when system is unavailable (busy, paused or reached internal limits)
  • [mod_sofia] Destroy session after relaying notify result on proxy refer.
  • [mod_sofia] Fix build on older sofia-sip when NUTAG_CALL_TLS_ORQ_CONNECT_TIMEOUT tag is undefined.
  • [mod_sofia] Fix multiple issues in sofia_presence.c found by scan-build.
  • [mod_sofia] Fix possible nua handle leak in sofia_handle_sip_i_refer()
  • [mod_sofia] Fix use of NUTAG_CALL_TLS_ORQ_CONNECT_TIMEOUT when sip_call_tls_orq_connect_timeout channel variable is undefined.
  • [mod_sofia] Fixed a few Usage-of-uninitialized value bugs which may cause information discolsure and bypass ACL check
  • [mod_sofia] Map 607 to CAUSE_UNWANTED and add 608 to CALL_REJECTED
  • [mod_sofia] Remove redundant sip_from->a_url checks
  • [mod_sofia] add 'sip_destination_prefix' var to prefix user portion of request uri with a value (note this will not affect calls to registered endpoints)
  • [mod_sofia] fix md5 digest infoleak
  • [mod_sofia] fix memleak (presence)
  • [mod_sofia] fix memleak on gw registration timeout.
  • [mod_sofia] fix memleak with invalid hostname as gw/proxy
  • [mod_sofia] more fixes around md5 hash infoleak (tricky cfg).
  • [mod_sofia] release nat mapping when nua create failed
  • [mod_sofia] scan-build: Argument with 'nonnull' attribute passed null
  • [mod_sofia] scan-build: Dereference of null pointer in sofia_handle_sip_i_bye(), sofia_handle_sip_i_invite() and our_sofia_event_callback()
  • [mod_sofia] scan-build: Fix dereference of null pointer in sofia_outgoing_channel().
  • [mod_sofia] sofia_process_dispatch_event() should unref all handles via sofia stack
  • [mod_sofia] unit-tests fix - don't run shaken tests if lib not installed
  • [mod_spandsp] Fix t.38 fax initialization not to add it to the timer thread until after configuration has completed.
  • [mod_spandsp] Protect spandsp data from t38 timer thread and call session thread simultaneous access.
  • [mod_spandsp] scan-build: Argument with 'nonnull' attribute passed null in modem_init()
  • [mod_spandsp] scan-build: Argument with 'nonnull' attribute passed null in udptl_rx_packet()
  • [mod_ssml] replace strncpy() with snprintf() to fix errors reported by newer compilers.
  • [mod_tts_commandline] check return of switch_system() against 127 too
  • [mod_v8] Fix false-positive memory leak detected in process_status_function() by scan-build
  • [mod_valet_parking] Do not crash when exit key is not defined
  • [mod_valet_parking] Fix typo in valet_parking_orbit_dialplan channel variable.
  • [mod_verto] Add hack.diff to mcast's swig
  • [mod_verto] Fix content length overflow on 32bit
  • [mod_verto] Fix leak in http_run
  • [mod_verto] Fix memory leak and a deadlock on verto endpoint interface in verto_outgoing_channel()
  • [mod_verto] Fix use of libks websockets on Windows. POLLHUP is ignored in poll events on Linux but fails on Windows so should be avoided.
  • [mod_verto] Handle short read from websocket. This fixes an interop problem with iOS 15.
  • [mod_verto] clientReady - reattached_sessions array
  • [mod_verto] scan-build: fix false-positive Argument with 'nonnull' attribute passed null in check_auth
  • [mod_xml_ldap] Move all memory allocations into the mod's pool so it does not leak on shutdown. Fix leaking xml_ldap_search().
  • [unit-tests] [mod_sndfile] fix build for Debian Jessie
  • [unit-tests] [mod_sndfile] increase SPS limit
  • [unit-tests] fix SPS-related race in the sndfile test.

Installation guides

https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes

v1.10.6

3 years ago

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 86a5ee3509
  • [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 pointer passed as an argument to a 'nonnull' parameter
  • [mod_sofia] Url encode the sip_to_user before using in 200 ok contact
  • [mod_sofia] Use thread-safe alternatives when destroying nua and nua_handle references. Bump sofia-sip library requirement to version 1.13.3
  • [mod_spandsp, mod_gsmopen] Fix typo and build with external spandsp
  • [mod_spandsp] Fix two white-space errors
  • [mod_unimrcp] Allow prosody-rate to be negative
  • [mod_v8] Fix C++ compile warning
  • [mod_video_filter] Disable waiting video ready which blocks the channel 10 seconds in early media
  • [mod_voicemail] Fix error-case return in vm_fsdb_pref_greeting_set_function
  • [Packaging] fix debian/util.sh to work properly with new cowbuilder/pbuilder requirements for gpg keyfile formatting. add gpg to to Build-Depends as its needed to reformat the ascii armored key into the required binary format.
  • [sofia-sip] Fix leaks of su_wait_t and epoll file descriptors.
  • [test] Fix fst_session_park() to wait for CF_PARK instead of CS_PARK.
  • [Unit-tests] Fix build issues in switch_eavesdrop.c test file.
  • [Unit-Tests] Fix leak of arg in the case of an error in fct_clp__parse()
  • [Unit-tests] Fix previously defined AM_* in tests.
  • [Unit-Tests] Tweak test framework, fail loading unit test when out of memory.

Installation guides

https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes

v1.10.5

3 years ago

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

v1.10.4

3 years ago

This is a major release containing not only new features and stability improving bug fixes, but also changes to the build system to make contributing to FreeSWITCH and its modules easier for the community!


 Release Notes - FreeSWITCH - Version 1.10.4

Enhancement

  • [Build-System] Allow full path or git clone url (with arguments) in modules.conf to build out of tree modules.
  • [Build-System] Fix Visual Studio detection logic to use the latest installed when building FreeSWITCH or sound packages.
  • [Build-System] Remove Sofia-Sip library from the FreeSWITCH tree and use packages instead.
  • [Build-System] Remove SpanDSP library from the FreeSWITCH tree and use packages instead.
  • [Build-System] Use $(DefaultPlatformToolset) so it's easier to build using newer Microsoft Visual Studio versions.
  • [Core] Add AEAD_AES_128_GCM and AEAD_AES_256_GCM ciphers support.
  • [docs] Update wiki link to confluence
  • [mod_http_cache] Add v4 sig
  • [mod_openh264] Enable build on Drone.
  • [mod_sofia] Cleanup usage of sofia-sip headers.
  • [sofia-sip] Add urn: scheme support to sofia.
  • [test] Disable logs when loading and shutting down FS core
  • [Tests] Split drone build and run-tests.

Bug

  • [Build-System] Fix folder conflict when building unit-tests on Windows.
  • [Build-System] Fix typo in debian/bootstrap.sh
  • [Build-System] Fix wrong libspandsp-dev version for Debian
  • [build] detect system installed sofia-sip using PKG_CONFIG_PATH
  • [build] properly prepend PKG_CONFIG_PATHS on out of tree modules
  • [core] fix build with newer build tools against openssl 1.1
  • [Core] Fix leak of BIO_METHOD *dtls_bio_filter_methods in switch_rtp_add_dtls()
  • [Core] Fix size overflow in pool_stats (when configured with --enable-pool-debug)
  • [esl] Fix typo in fs_cli.c
  • [mod_av] Break packets evenly
  • [mod_cv] scan-build: Null pointer passed as an argument to a 'nonnull' parameter.
  • [mod_event_socket] Fix hangup race with listener_thread of socket application in async mode
  • [mod_http_cache] Fix Windows build
  • [mod_openh264] Fix stap-a size issue and add unit test.
  • [mod_silk] switch_silk_decode: Fix invalid condition for return code from switch_jb_peek_frame().
  • [mod_sofia] Fix crash when proxy INFO without body
  • [mod_sofia] Verify that replaces header params exist
  • [sofia-sip] Timed out or not established wss should be destroyed immediately and avoid keep-alive functionality.
  • [Tests] Fix build on new Drone
  • [Tests] Fix Drone CI capturing Address Sanitizer reports sent to stderr.

Installation guides

https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes

v1.10.3

4 years ago

This is a major bugfix release. As part of our continuing dedication to code quality we have resolved static analysis bugs in all of FreeSWITCH core and in most modules. And not just that. We got huge improvements in change inspections by focusing on the testing framework - our code quality tooling that already helping us fixing leaks, codecs, database logic issues, behavior instabilities and making dependency updates easier. Almost three hundred changes covering the entire codebase contain fixes for memory errors, potential crashes and misbehaviours.


 Release Notes - FreeSWITCH - Version 1.10.3

Enhancement

  • [Build-System] Add print_tests make target to output the list of tests being built including in modules
  • [Build-System] Enable mod_ilbc Debian packaging.
  • [Build-System] Update debian/control and replace all instances of Priority: extra with Priority: optional. Since Debian Policy version 4.0.1, the priority extra has been deprecated.
  • [build/test] git ignore test output
  • [cJSON] Update to v1.7.12
  • [Configuration] sip_profiles: Use $${external_sip_ip} for ext-sip-ip, $${external_rtp_ip} for ext-rtp-ip
  • [Core, mod_loopback] Add support to set group confirm on each leg
  • [core] add audio channels limit when opening files, configurable through switch.conf.xml (param "max-audio-channels")
  • [core] Add global/leg variable to originate: group_confirm_timeout
  • [core] Reduce log level to DEBUG for binding to events and certain clock messages
  • [core] refactor originate internals (oglobals)
  • [Core] switch_rtp: reduce dtls handshake failure level from error to warning.
  • [Core] switch_rtp: reduce end call due to SRTP failure log level from error to warning.
  • [Core] Track who calls memory pool destroy.
  • [core] Transfer with rtp_pass_codecs_on_stream_change one way audio
  • [core] Turn DTMF logging on or off using sensitive_dtmf var
  • [docs/phrase] Translated all phrases (voice prompts) to German.
  • [mod_amr, mod_amrwb] RFC4867 mode-set compliancy
  • [mod_av] Reduce error level to warning for "Could not decode frame".
  • [mod_av] reduce some errors to warnings in logs
  • [mod_avmd] Add test of CPU usage
  • [mod_httapi] Introduction of connect-timeout param
  • [mod_kazoo] add event stream connected time
  • [mod_kazoo] maintenance
  • [mod_kazoo] some fixes & enhancements
  • [mod_loopback] add channel var loopback_no_pre_answer
  • [mod_loopback] Don't block channel too long if already hangup, also add option to hangup immediately with cause
  • [mod_shout] Reduce log level from error to warning for "Error opening %s (invalid rate or channel count)"
  • [mod_sndfile] Reduce error level to warning for "Error Opening File"
  • [mod_sofia] Add abort-on-empty-external-ip global param disabled by default.
  • [mod_sofia] Add new gateway param 'contact-in-ping' to support Microsoft Teams Direct Routing
  • [mod_sofia] Quiet down error when registration credentials are missing
  • [mod_verto] Fix Makefile.am and reswig, fix scan-build warnings in swig and enable scan-build on Drone
  • [mod_verto] Setting transfer_disposition to recv_replace on aleg
  • [sofia-sip] Build internal tests
  • [Testing] Add clang static analyzer to Drone CI
  • [Testing] Add mod_portaudio, mod_redis, mod_skinny to scan-build on Drone
  • [Unit-test] Run tests in parallel
  • [Unit-test] Separate to a node on Drone CI
  • [unit-tests] add RTP test with session
  • [Unit-tests] Collect crash data when a unit-test core-dumps
  • [Unit-tests] Do not initiate sqldb by default unless requested.
  • [Unit-tests] Enable address sanitizer when running tests.
  • [Unit-tests] Implement module tests in Drone CI
  • [Unit-tests] Place module tests into their module's Makefile.am, fix tests, add missing Makefile.am to mod_png, implement recursive make check.
  • Add git configuration to ignore errors from git fsck
  • Update libvpx to 1.8.1 and libyuv to ea23edfb

Bug

  • [apr-util] Fix issues reported by scan-build.
  • [apr-util] scan-build: Fix "Assigned value is garbage or undefined" in unknown_toUtf8
  • [apr] Fix dead assignment and use of uninitialized variable in strings.
  • [apr] Fix potential dereference of a null pointer when apr_pool_create_ex() is called without both an allocator and a parent while global_pool is uninitialized.
  • [apr] Fix typo in network_io/unix/sendrecv.c made by previous commit
  • [apr] scan-build: Fix "Argument with 'nonnull' attribute passed null" in file_io/unix/filepath.c
  • [apr] scan-build: Fix dereference of a null pointer and unused variable in network_io/unix
  • [apr] scan-build: fix dereference of null pointer in apr_hash_merge() and apr_proc_other_child_unregister()
  • [apr] Scan-build: Fix multiple dead assignments in sha2.c
  • [apr] scan-build: fix use of unassigned values in file_io/unix
  • [Build-System] Add sndfile.conf.xml to CentOS spec file.
  • [Build-system] Fallback for mariadb lib check
  • [Build-System] Fix regression from the mariadb library checking fix.
  • [core, mod_loopback] Fix group confirm loopback
  • [core,mod_verto,mod_xml_rpc] Fix use of deprecated CRYPTO_set_id_callback().
  • [core] add orig session check
  • [core] avoid overflow when channel muxing
  • [core] Fix copy/paste mistake in switch_xml.h
  • [Core] Fix crash when parsing some uncommon SDP attributes
  • [Core] Fix dereference of null pointer in video_bridge_thread() when codec b is not yet initialized.
  • [Core] Fix leak in switch_xml_set_attr(). Add case to a unit test.
  • [Core] Fix locking and a memory leak in switch_core_session_write_video_frame() and switch_core_session_write_text_frame().
  • [core] fix memory leak on playback, in certain error conditions (eg: native file related)
  • [Core] Fix one way audio after executing the uuid_recv_dtmf with dtmf string ending with w or W.
  • [Core] Fix OSX build in switch_ivr_originate.c
  • [Core] Fix possible leak of the subclass variable in CUSTOM_HASH'es switch_event_reserve_subclass_detailed().
  • [Core] Fix potential leak of hash table keys.
  • [Core] Fix RTP unit-test by adding switch_rtp_get_core_session().
  • [core] fix sdp parsing on invalid sdp
  • [core] Fix switch_vad_process() to properly use result of fvad_process()
  • [Core] Fix various dead assignments.
  • [core] fix: don't terminate file before max_samples returned
  • [Core] Remove dead assignment and dead increment in text_bridge_thread().
  • [core] scan-build: Access to field 'microseconds_per_packet' results in a dereference of a null pointer
  • [core] scan-build: Called function pointer is null (null dereference) - switch_ivr_collect_digits_callback()
  • [core] scan-build: Dereference of null pointer (loaded from variable 'result') - switch_ivr_play_and_detect_speech()
  • [core] scan-build: Dereference of null pointer (loaded from variable 'txt') - switch_img_write_text_img(
  • [Core] scan-build: Fix "Result of operation is garbage or undefined" in switch_color_yuv2rgb()
  • [Core] scan-build: Fix "The result of the '<<' expression is undefined" in switch_log_str2mask().
  • [Core] scan-build: Fix possible dereference of null pointer in switch_loadable_module_sort_codecs()
  • [core] scan-build: Function call argument is an uninitialized value - switch_xml_set_attr()
  • [core] scan-build: Function call argument is an uninitialized value - sig_tone_rx()
  • [core] scan-build: Null pointer passed as an argument to a 'nonnull' parameter - switch_event_base_add_header()
  • [core] scan-build: The result of the '<<' expression is undefined - switch_log_str2mask()
  • [core] scan-build: Value stored to 'EM' is never read - rpe_grid_selection()
  • [core] scan-build: Value stored to 'err' is never read
  • [core] scan-build: Value stored to 'err' is never read - switch_loadable_module_build_dynamic()
  • [core] scan-build: Value stored to 'file' is never read
  • [core] scan-build: Value stored to 'first_timeout' is never read - switch_ivr_collect_digits_count()
  • [core] scan-build: Value stored to 'frame' during its initialization is never read - eavesdrop_callback()
  • [core] scan-build: Value stored to 'ip' is never read - switch_core_media_recover_session()
  • [core] scan-build: Value stored to 'last_speed' is never read - switch_ivr_play_file()
  • [core] scan-build: Value stored to 'lcount' is never read - switch_xml_toxml_r()
  • [core] scan-build: Value stored to 'len' is never read
  • [core] scan-build: Value stored to 'master' is never read - switch_ivr_broadcast()
  • [core] scan-build: Value stored to 'midstate' during its initialization is never read
  • [core] scan-build: Value stored to 'midstate' during its initialization is never read - switch_core_session_hangup_state()
  • [core] scan-build: Value stored to 'myflags' during its initialization is never read - switch_ivr_originate()
  • [core] scan-build: Value stored to 'pass_fmtp' is never read - switch_core_media_gen_local_sdp()
  • [core] scan-build: Value stored to 'pid' is never read - buffer_vp9_packets()
  • [core] scan-build: Value stored to 'ptime' is never read
  • [core] scan-build: Value stored to 'q' during its initialization is never read - msrp_parse_headers()
  • [core] scan-build: Value stored to 'status' is never read
  • [core] scan-build: Value stored to 'status' is never read - audio_bridge_thread()
  • [core] scan-build: Value stored to 'status' is never read - switch_core_session_write_frame()
  • [core] scan-build: Value stored to 'status' is never read - switch_ivr_eavesdrop_session()
  • [core] scan-build: Value stored to 'status' is never read - switch_ivr_menu_execute()
  • [core] scan-build: Value stored to 'status' is never read - switch_ivr_session_echo()
  • [core] scan-build: Value stored to 'theiroffset' is never read
  • [core] scan-build: Value stored to 'time_sync' during its initialization is never read
  • [core] scan-build: Value stored to 'time_sync' is never read - softtimer_runtime()
  • [core] scan-build: Value stored to 'timeout' is never read - switch_ivr_park()
  • [core] scan-build: Value stored to 'timer_name' is never read - switch_core_media_activate_rtp()
  • [core] scan-build: Value stored to 'tz_name' is never read - switch_strftime_tz()
  • [core] scan-build: Value stored to 'xcheck_jitter' is never read
  • [Core] switch_loadable_module wrongly logs that modules.conf loading fails while it's pre_load_modules.conf
  • [Core] switch_rtp: update username to allow size specified in STUN RFC 5389
  • [core] use switch_core_session_get_partner in sched_hangup to hangup …
  • [Core] Wait sql threads to spin up. Fixes module_exists, show_codec commands.
  • [iksemel, libdingaling] scan-build: fix multiple dead assignments and dereference of null pointer
  • [libnatpmp] scan-build: The left operand of '!=' is a garbage value
  • [libvpx] Fix pthread configure checks: "Null pointer passed as an argument to a 'nonnull' parameter"
  • [libvpx] Fix typo in Windows project file.
  • [libvpx] scan-build: Division by zero - measure_square_diff_partial()
  • [libvpx] scan-build: Fix "Assigned value is garbage or undefined" in vpx_post_proc_down_and_across_mb_row_c()
  • [libvpx] scan-build: Fix "Dereference of null pointer" in vp8_peek_si_internal
  • [libvpx] scan-build: Fix "Result of operation is garbage or undefined" in vp9/encoder/vp9_rd.c
  • [miniupnpc] fix heap-buffer-overflow reported by ASAN (on read)
  • [miniupnpc] Value stored to 'fd_flags' is never read
  • [mod_abstraction] scan-build: Fix dead assignment.
  • [mod_amqp] scan-build: Dereference of null pointer (loaded from variable 'active') - mod_amqp_connection_open()
  • [mod_amqp] scan-build: Multiple dereference of null pointer (loaded from variable 'active')
  • [mod_amr] fix memory leak at load time (xml)
  • [mod_amr] scan-build: Array access (from variable 'tocs') results in a null pointer dereference - switch_amr_unpack_oa()
  • [mod_amr] scan-build: fix dead increment of fmtptmp_pos in switch_amr_init()
  • [mod_amr] scan-build: Value stored to 'ft' is never read - switch_amr_unpack_be()
  • [mod_amr], [mod_amrwb]: mark AMR and AMRWB as VBR, don't let mod_native_file load them for playback/recording)
  • [mod_amrwb] fix memory leak at load time (xml)
  • [mod_av] Fix mod_av not having audio when using avresample
  • [mod_callcenter] scan-build: Fix dead initialization.
  • [mod_cidlookup] Fix dereference of null pointer and optimize use of pool's memory avoiding double-allocations.
  • [mod_conference] Fix memory leaks and a possible deadlock in chat_send();
  • [mod_conference] fix overflow (video mode == passthrough)
  • [mod_conference] Fix possible NULL argument.
  • [mod_dingaling] scan-build: fix multiple dead assignments and dereference of null pointer.
  • [mod_dptools] scan-build: Fix "Potential leak of memory pointed to by 'head'"
  • [mod_erlang_event] Fix segfault in destroy_listener()
  • [mod_erlang_event] scan-build: Access to field 'rwlock' results in a dereference of a null pointer (loaded from variable 'listener')
  • [mod_erlang_event] scan-build: Function call argument is an uninitialized value
  • [mod_fifo] scan-build: Function call argument is an uninitialized value, fix dead assignments
  • [mod_fifo] scan-build: Value stored to 'arg' is never read - xml_callback()
  • [mod_hash] Fix use of remote's hash table after free.
  • [mod_hash] scan-build: Fix "Potential leak of memory pointed to by 'item'".
  • [mod_hiredis] Fix dependency for Debian Buster.
  • [mod_httapi] Fix leak of context->url_params
  • [mod_imagick] Remove unused variable.
  • [mod_java] scan-build: Undefined or garbage value returned to caller - run_dtmf_callback()
  • [mod_java] scan-build: Value stored to 'status' is never read - create_java_vm()
  • [mod_json_cdr] scan-build: Fix dead assignments.
  • [mod_kazoo] add checks, fixes & defaults
  • [mod_kazoo] Fix potential memory leaks
  • [mod_kazoo] queue timeout configuration
  • [mod_loopback] fix early_set_loopback_id for b leg
  • [mod_loopback] Split null_auto_answer into two variables null_enable_auto_answer and null_auto_answer_delay. Default auto_answer_delay is 0 instead of 1 ms. Auto answer is enabled by default if null_enable_auto_answer is not set. More carefully compute the delay in ms to not block channel longer than needed.
  • [mod_lua] Fix leaks.
  • [mod_mariadb] Fix autocommit not flipping back to on when a transaction ends in mod_mariadb causing switch_cache_db_test_reactive() to fail.
  • [mod_mariadb] Fix reconnect during db failover/restart
  • [mod_memcache] scan-build: Fix "Uninitialized argument value"
  • [mod_native_file] don't channel mux during native file play (and avoid overflow too).
  • [mod_odbc_cdr] scan-build: Fix dereference of null pointer and a dead assignment.
  • [mod_opusfile] fix play sample rate (don't use original rate, always use 48k), fix EOF, add unit-test.
  • [mod_opusfile] use SWITCH_SIZE_T_FMT when printing debug logs.
  • [mod_oreka] scan-build: Value stored to 'linear_frame' is never read oreka_audio_callback()
  • [mod_pgsql,mod_mariadb] Fix scan-build warnings.
  • [mod_pgsql] Fix autocommit not flipping back to on when a transaction ends in mod_pgsql causing switch_cache_db_test_reactive() to fail.
  • [mod_png] Remove unused variable.
  • [mod_portaudio] CF_AUDIO flag is not set
  • [mod_portaudio] scan-build: Access to field 'next' results in a dereference of a null pointer (loaded from variable 'previous').
  • [mod_portaudio] scan-build: Dead assignments
  • [mod_portaudio_stream] scan-build: Fix dead assignment.
  • [mod_python] scan-build: Fix "Argument with 'nonnull' attribute passed null"
  • [mod_rayo] Fix heap use after free and a possible buffer overflow.
  • [mod_rayo] Fix leak in the mod and in tests.
  • [mod_redis] scan-build: Assigned value is garbage or undefined
  • [mod_redis] scan-build: Dereference of null pointer - cr_delete()
  • [mod_redis] scan-build: Potential leak of memory pointed to by 'cptr' - cr_morebulk()
  • [mod_rss] scan-build: Fix dead assignments.
  • [mod_rtmp] scan-build: Access to field 'name' results in a dereference of a null pointer (loaded from variable 'profile') - config_profile()
  • [mod_rtmp] scan-build: Value stored to 'codec' is never read - rtmp_audio_codec()
  • [mod_rtmp] scan-build: Value stored to 'status' is never read - RTMP_INVOKE_FUNCTION(rtmp_i_sendevent)
  • [mod_say_xx] Fix multiple dead assignments
  • [mod_shout] Fix Windows build by placing libogg sources to files.freeswitch.org
  • [mod_silk] Fix mod_silk always init with maxaveragebitrate=20000
  • [mod_skinny] scan-build: Assigned value is garbage or undefined
  • [mod_skinny] scan-build: Dead assignments
  • [mod_skinny] scan-build: Value stored to 'profile' is never read - channel_outgoing_channel()
  • [mod_sndfile] Fix .raw audio file playing and other raw audio file extensions. Fix stereo2mono for certain formats.
  • [mod_sofia] Fix potential buffer overrun when rewrite_multicasted_fs_path is enabled.
  • [mod_sofia] Fix rtp config ipv4/ipv6 index confusion
  • [mod_sofia] remove blank display name that can show up in from uri
  • [mod_sofia] scan-build: Access to field 'sip_call_info' results in a dereference of a null pointer (loaded from variable 'sip')
  • [mod_sofia] scan-build: Access to field 'sip_payload' results in a dereference of a null pointer (loaded from variable 'sip')
  • [mod_unimrcp] scan-build: Access to field 'name' results in a dereference of a null pointer (loaded from variable 'mod_profile')
  • [mod_unimrcp] scan-build: Value stored to 'lname' is never read - audio_queue_create()
  • [mod_v8] Fix scan-build warnings.
  • [mod_verto] fix crash on vhost http server requests without content type
  • [mod_verto] Fix Makefile.am and reswig
  • [mod_verto] Fix packet o death.
  • [mod_verto] Fix scan-build warnings in swig and enable scan-build on Drone.
  • [mod_verto] scan-build: Null pointer argument in call to string comparison function - http_run()
  • [mod_verto] scan-build: Value stored to 'cur' is never read
  • [mod_verto] scan-build: Value stored to 'status' is never read - verto_read_text_frame()
  • [mod_vlc] Fix segfault.
  • [mod_vlc] scan-build: Access to field 'context' results in a dereference of a null pointer (loaded from variable 'tech_pvt');
  • [mod_vlc] scan-build: multiple dereferences of a null pointer
  • [mod_vlc] scan-build: Value stored to 'vcontext' is never read - av_init_handle()
  • [mod_vlc] scan-build: Value stored to 'vcontext' is never read - vlc_file_av_open()
  • [mod_voicemail_ivr] scan-build: Null pointer passed as an argument to a 'nonnull' parameter - SWITCH_STANDARD_APP(voicemail_ivr_function)
  • [mod_voicemail_ivr] scan-build: Value stored to 'previous_msg' during its initialization is never read - vmivr_menu_navigator()
  • [mod_xml_cdr] scan-build: Fix dead assignments.
  • [sofia-sip] fix build on newer clang
  • [sofia-sip] Fix crash in timer B outgoing_timer_bf() which asserts if INVITE request was completed already.
  • [sofia-sip] fix logging overflow (sofia loglevel tport X)
  • [sofia-sip] Fix multiple issues reported by scan-build.
  • [sofia-sip] Fix Out-of-bound array access warning: String copy function overflows destination buffer in nua_stack_event()
  • [sofia-sip] Fix out-of-bounds write in sres_sofia_update().
  • [sofia-sip] Fix sdp_session_cmp(), add test. Scan-build: Fix multiple dereferences of null pointer.
  • [sofia-sip] Fix use of deprecated CRYPTO_set_id_callback().
  • [sofia-sip] Guard if in sres_record_compare() and fix braces in sres_resolver_receive().
  • [sofia-sip] scan-build: Access to field 'ai_addr' results in a dereference of a null pointer (loaded from variable 'res')
  • [sofia-sip] scan-build: Access to field 'c_address' results in a dereference of a null pointer (loaded from variable 'c'
  • [sofia-sip] scan-build: Access to field 'c_nettype' results in a dereference of a null pointer (loaded from variable 'a')
  • [sofia-sip] scan-build: Access to field 'nh_destroyed' results in a dereference of a null pointer (loaded from variable 'nh')
  • [sofia-sip] scan-build: Access to field 'z_number_of_adjustments' results in a dereference of a null pointer (loaded from variable 'a')
  • [sofia-sip] scan-build: Assigned value is garbage or undefined - outgoing_naptr_tport()
  • [sofia-sip] scan-build: Assigned value is garbage or undefined - outoing_naptr_tport()
  • [sofia-sip] scan-build: Fix "Called function pointer is null (null dereference)" in t_filter() of su_taglist.c
  • [sofia-sip] scan-build: Fix "Dereference of null pointer" in outgoing_answer_srv().
  • [sofia-sip] scan-build: Fix "Result of operation is garbage or undefined" in sres_log_response()
  • [sofia-sip] scan-build: Fix "The left operand of '<' is a garbage value" (prefs) in outgoing_naptr_tport() of nta.c
  • [sofia-sip] scan-build: Fix dereference of null pointer in outgoing_query_results().
  • [sofia-sip] scan-build: Null pointer passed as an argument to a 'null' parameter
  • [sofia-sip] scan-build: Value stored to 'ci' during its initialization is never read - sip_info_d()
  • [sofia-sip] scan-build: Value stored to 'contacts' is never read - nua_register_client_request()
  • [sofia-sip] scan-build: Value stored to 'end' during its initialization is never read - sip_info_d()
  • [sofia-sip] scan-build: Value stored to 'invite_timeout' is never read - nua_invite_client_request()
  • [sofia-sip] scan-build: Value stored to 'now' during its initialization is never read - _nta_incoming_timer()
  • [sofia-sip] scan-build: Value stored to 'options' is never read - tls_init_context()
  • [sofia-sip] scan-build: Value stored to 'phrase' is never read - auth_check_digest()
  • [sofia-sip] scan-build: Value stored to 'rest' is never read - msg_extract_payload()
  • [sofia-sip] scan-build: Value stored to 's' during its initialization is never read - nua_handle_contact_by_via()
  • [sofia-sip] scan-build: Value stored to 'tport' is never read - incoming_retransmit_reply()
  • [sofia-sip] scan-build: Value stored to 'why' is never read - tport_tcp_ping()
  • [sofia-sip] Sip crash on unresolvable dns resolution error of outbound request.
  • [spandsp] fix memcpy-param-overlap - use memmove()
  • [SpanDSP] Fix use of uninitialized xyz variable in set_illuminant_from_code()
  • [SpanDSP] Remove unused x_repeats variable from header_row_read_handler()
  • [spandsp] scan-build: Array subscript is undefined - test_cadence()
  • [spandsp] scan-build: Dereference of null pointer - at_put_response()
  • [spandsp] scan-build: Division by zero - test_cadence()
  • [spandsp] scan-build: Fix "Result of operation is garbage or undefined" in rpe_grid_selection()
  • [spandsp] scan-build: The left operand of '>' is a garbage value - super_tone_chunk()
  • [spandsp] scan-build: Value stored to 'res' is never read - t4_tx_set_tx_image_format()
  • [spandsp] scan-build: Value stored to 'result' is never read - read_tiff_t85_image()
  • [srtp] scan-build: Fix dead assignments.
  • [test] Fix out of bound buffer read in switch_test
  • [unit-tests] fix build switch_rtp on MacOS
  • [Unit-tests] Fix leaks mod_av and mod_conference tests, fix fonts and paths.
  • [unit-tests] scan-build: Result of 'malloc' is converted to a pointer of type 'char', which is incompatible with sizeof operand type 'int16_t'

Installation guides

https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes

v1.10.2

4 years ago

This is the minor bug fix release including stability in the Core, memory management and improvements related to the unit-tests.


 Release Notes - FreeSWITCH - Version 1.10.2

Enhancement

  • [core] Add SMBF_FIRST flag which forces media bug to front of the list. Add 'f' flag to switch_ivr_displace_session to add displace as first operation on the media stream.
  • [unit-tests] add basic RTP unit-test
  • [esl] Add SHUTDOWN_REQUESTED event.
  • [core] Add SHUTDOWN_REQUESTED event
  • [mod_sofia] add sip_refer_status_code channel variable to track refer status
  • [mod_loopback] add refer mock to null endpoint
  • [mod_kazoo] use globals hostname to create nodename in create_ei_cnode
  • [Unit-tests] Simple RTP unit test + unit tests fixes
  • Add unit-tests automation to Drone CI
  • [core] add PRE_CLOSED flag on file handle, add unit test.
  • [mod_loopback] remember dtmf in channel var null_channel_dtmf_queued
  • [core] remember if a tag is parsed from CDATA
  • [core] log status code when queue event failure
  • [mod_kazoo] recurse context runtime vars
  • [core] change No audio stun for a long time error to warning
  • [mod_kazoo] add kz-endpoint-runtime-context
  • [core] allow event-channel debugging & single delivery
  • [mod_sofia] add K- to prefixes that create a sip_h_ variable
  • [mod_sofia] add existing variables when locating user
  • [mod_kazoo] several fixes & code cleanup
  • [Core] Make switch_ivr_orig_and_bridge function return status and a cause
  • [mod_sofia] Module load will fail if ext-rtp-ip or ext-sip-ip configuration param is set as empty string.
  • [core] Update switch_ivr_bridge_bleg to skip audio bridge during transfer
  • [build] fix libvpx osx build detection on newer compilers and osx versions so we use sse extensions on newer versions
  • [mod_amqp] configurable commands queue properties
  • [mod_amqp] open logging and produced connections from within their threads
  • [core] support partial speech events
  • Add support for the Elbrus architecture
  • [mod_sofia] Fix some incorrect word contractions.
  • [mod_callcenter] Unreserve callcenter events when config errors loading
  • [Core] Disable msrp by default, only enable when listen-port or listen-ssl-port config params configured in msrp.conf
  • [Core, mod_commands] Add switch_core_pool_stats API and pool_stats command with corresponding --enable-pool-debug configure flag.
  • [FS-11677] - replace the write video of session with a bug
  • [FS-11827] - Add feature allowing FreeSWITCH to store CORE DB (SQLite) fully in memory
  • [FS-12022] - Receive my BACKGROUND_JOB events on outbound socket if myevents (LFLAG_MYEVENTS) is set
  • [FS-11773] - add callID to conference private event
  • [FS-11877] - callID in conference pvtData breaks some old VC client
  • [FS-11917] - if IPv6 disabled mod_event_socket silently stops default listener
  • [FS-12032] - remove extra ;

Bug

  • [mod_sofia] Fix crash from double profile unlock on outgoing channel from a gateway on a paused profile
  • [Core] DTMF: Avoid division by zero on low actual_samples_per_second
  • [Core] Fix hard coded dtmf durations based on 8k, fix short-circuit in write timestamp calc
  • [core] [sofia-sip] fix 183 been received later than 200
  • [Core] Wait for all EVENT_DISPATCH_QUEUE_THREADS before killing the logging which leaks otherwise.
  • [Unit-tests] Fix switch_core_file test.
  • [Core] Fix wrong sqldb initialization order causing crash on load.
  • [mod_kazoo] add kz_set_hostname declaration
  • [mod_kazoo] missing call to kz_set_hostname
  • [Unit-tests] Fix leaks in mod_test and in switch_core_codec, switch_vpx, switch_xml, switch_ivr_play_say tests.
  • [Unit-tests] Fix test framework by telling sqldb to manage handles so they don't leak and are destroyed on shutdown.
  • [Unit-tests] Simple RTP unit test + unit tests fixes
  • [mod_callcenter] Adding SAF_SUPPORT_NOMEDIA to callcenter_track since we don't need media up for it. Also, a small fix to make it compile on OSX.
  • [Unit-tests] Fix test framework leaking on successful checks under setup or teardown mode. Failed checks in these modes are noted and then freed, but not when passed.
  • [Unit-tests] Fix xml error not finding freeswitch.xml on FST_MINCORE_BEGIN
  • [Unit-tests] Fix switch_xml test crash
  • [fs_cli] Fix unchecked tainted data.
  • [core] fix copy and paste error
  • [mod_test] Fix OSX build
  • [Core] Fix scan-build warnings
  • [mod_event_socket] Fix "Listener session is null" problem - regression from previous commit to the mod.
  • [mod_avmd] Close session if adding a media bug fails
  • [core] Do not try to close a file handle if it's not SWITCH_FILE_OPEN, return SWITCH_STATUS_FALSE instead
  • [mod_tts_commandline] fix crash on file not found
  • [sofia-sip] Fix memory leak when a tcp connection gives POLLERR due to RST
  • [mod_event_socket] Adds null pointer checks on listener session and socket
  • [Core] Fix crashes due dereferences of null pointers in switch_ivr_originate and switch_ivr_enterprise_originate.
  • [Core] Database interface: fix potential crash in switch_cache_db_database_interface_flush_handles, code cleanup.
  • [mod_sndfile] don't force channels and sample rate with .raw extension
  • [mod_verto] Ignore not just zero but negative frame size as well.
  • [build] OSX Catalina configure does not support --extra-cflags and fix broken compiler option test for -Wno-extended-offsetof that was used to fix older osx clang issue
  • [mod_amqp] Properly parse out heartbeat parameter
  • [sofia-sip] Fix memory leak when incomplete tls connection.
  • [mod_kazoo] fix xml leak when event-filter is not available
  • Fix unit tests
  • [mod_event_multicast] Fix memory leak
  • [fs_cli] Fix typo, resolves garbled screen
  • [mod_voicemail] vm_fsdb_msg_email command leaks xml object.
  • [mod_local_stream] Xml object is leaked on reload when cannot stop local_stream beeing in use.
  • [mod_sofia] sofia_handle_sip_i_invite() leaks xml and event objects on acl_token, sofia_reg_handle_sip_r_challenge() leaks xml object when a user does not have params.
  • [mod_hiredis] Xml object is not freed on load.
  • [mod_distributor] Fix leak of xml object when no lists in config.
  • ESL adjustments for PHP 7+
  • [mod_av] Fix crash on av show codecs and av show formats.
  • [mod_say_fr] Fix "10" not playing in French.
  • [FS-10191] - mod_conference: don't send CUSTOM event with action "video-floor-change" for audio calls
  • [FS-11836] - Fix scan-build issues for switch_core_media
  • [FS-11993] - fix gcc errors when building mod_http_cache and mod_smpp on rpi4 (buster)
  • [FS-11995] - [ERR] mod_fifo.c:4398 ODBC IS NOT AVAILABLE!
  • [FS-12021] - Remove ascii art on mod_signalwire token line
  • [FS-12025] - FreeSWITCH crashes on reloadxml when spandsp tone detection is running
  • [FS-12026] - fix crash when playing downloaded multichannel wav file
  • [FS-12038] - [mod_sofia, core] Fix possible leak in chat_hash, add switch_core_hash_insert_auto_free()
  • [FS-12039] - [Core] Fix memory leak on ssl shutdown
  • [FS-12040] - [mod_sofia] Fix potential leak if realloc fails.
  • [FS-12041] - [Core] Fix memory leak on msrp shutdown
  • [FS-12042] - [sofia-sip] Fix typo in sresolv.
  • [FS-12048] - [Core] Fix leak in SQLite (switch_cache_db_execute_sql2str) when queries return a NULL containing field which may result in high memory consumption.
  • [FS-12050] - [Core] Fix DataBase Handle (DBH) cache logic
  • [FS-12055] - [mod_sofia] Fix leaks and release profile properly in general_event_handler() and actual_sofia_presence_event_handler()
  • [FS-12056] - [mod_sofia] Fix leaking destination in sofia_glue_do_invite() and leaking route in sofia_glue_gen_contact_str()
  • [FS-12057] - [mod_conference] Fix video mute
  • [FS-12058] - [sofia-sip] Fix scan-build issues in su_alloc.c

Not a bug

  • [build/docs] point all old stash references in docs and makefiles to new github repository

Installation guides

https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+1.10.x+Release+notes