[Freeswitch-users] FreeSWITCH Week in Review(Master Branch) April 27th-May 3rd

Kathleen King kathleen.king at quentustech.com
Wed May 7 08:05:13 MSD 2014


Hello, again. This week in the FreeSWITCH master branch we had 105 
commits. The topic from last week was fixing a load of issues reported 
from Coverity.com's static analysis as well as reports from latest clang 
static analysis. Many of the commits were geared toward removing dead 
code, initializing variables, and including a build change removing 
libldns from tree to be a system lib.

The following bugs were squashed:

6072473 FS-6413 update presence_epoch to lock to midnite. fix for broken 
NOTIFY cseq over TCP after FS is restarted in mod_sofia Jira: 
http://jira.freeswitch.org/browse/FS-6413
ef18915 make sure old_pid_buffer is null terminated in FS core
59734d8 add bounds check to keep rtcp packets with > 5 report blocks 
from creating a buffer overrun in switch_rtp
c36e630 added unlock on shutdown after grabbing a read write lock of 
gcache in mod_http_cache
cc06d91 FS-4779 FS-6467 the behaviour from 4479 is now masked behind the 
param 3pcc-reinvite-bridged-on-ack FS-6467 please test master
Jira: http://jira.freeswitch.org/browse/FS-4779
974cebd SIP-686 changed mod_say (en) to speak full dates when asked to 
speak a date in the future (rather than only weekday and time).
8d10e65 fix bitwise flag unsetting
d06b137 fixed error caused by the sip_invite_domain being forced to the 
IPv4 address in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6498
d2c2f17 FS-6500: try to do the bounds checking properly using element of 
the enum
Jira: http://jira.freeswitch.org/browse/FS-6500

New features that were added:
d0de8c0 add heartbeat_use_scheduler variable to force the heartbeat to 
use the scheduler rather than the media stream and also make it 
auto-change between modes when going in and out of the media path in FS core

Improvements in cross platform build supports:
367f4f3 FS-6500: use correct type in ftdm callback in mod_freetdm

Jira: http://jira.freeswitch.org/browse/FS-6500
ca88a04 FS-6500: handle conversion from switch to ftdm cause type which 
almost match each other in mod_freetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
a3e1b7d Protect cross-compiling from polluted PKG_CONFIG_PATH for temp 
work around for debain package bug
7da28a2 FS-353: look for ldns pkg-config for homebrew, you will need to 
update your homebrew ldns package if you installed it prior to this 
commit, they just fixed the pkg-config file being installed
Jira: http://jira.freeswitch.org/browse/FS-353
cbcf54b FS-6500: fix return value type for outgoing_channel function in 
mod_freetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
317f4b1 Fix building with musl libc
c462ed6 fixed broken build in mod_voicemail_ivr
Jira: http://jira.freeswitch.org/browse/FS-6499
e57484a FS-6497: --resolve fix for loop initial declaration not allowed
Jira: http://jira.freeswitch.org/browse/FS-6497
cd650f6 removed ldns from tree and used system ldns
13b4115 FS-6500: freebsd does not support the inline backtrace solution 
in libfreetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
c44404d Add a fallback test for ldns system library

In terms of stability these were the use cases that were fixed:
a9a8524 fix read beyond buffer length error in mod_voicemail_ivr

fc40e4a Avoid leaking data_buf in mod_conference
a83fde3 fixed block of code in here twice was writing over expanded, 
causing it to potentially leak in mod_lcr
ac9741b don't leak xml string in dl_logger in mod_dingaling
6f16e0d fixed leaking if first realloc fails and second one succeeds in 
mod_redis
c51b55a FS-6491 fixed a crash caused by running two perl scripts from 
different threads in the same session in switch_channel
Jira: http://jira.freeswitch.org/browse/FS-6491
23b3e17 fixed leak in file handle if fd=0 in mod_redis
a1a3974 fixed leaked body in error case for esl

Feedback is welcome at kathleen.king at quentustech.com and the commits for 
this week are in the attached file along with the corresponding Jira links.

-- 
Kathleen King
Quentus Technologies, INC
1037 NE 65th St Suite 273
Seattle, WA 98115
Main:   (877) 211-9337
Cell:   (703) 859-3757
kathleen.king at quentustech.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20140506/25a53667/attachment-0001.html 
-------------- next part --------------
Build:
367f4f3 FS-6500: use correct type in ftdm callback in mod_freetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
ca88a04 FS-6500: handle conversion from switch to ftdm cause type which almost match each other in mod_freetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
a3e1b7d Protect cross-compiling from polluted PKG_CONFIG_PATH for temp work around for debain package bug
7da28a2 FS-353: look for ldns pkg-config for homebrew, you will need to update your homebrew ldns package if you installed it prior to this commit, they just fixed the pkg-config file being installed
Jira: http://jira.freeswitch.org/browse/FS-353
cbcf54b FS-6500: fix return value type for outgoing_channel function in mod_freetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
317f4b1 Fix building with musl libc
c462ed6 fixed broken build in mod_voicemail_ivr
Jira: http://jira.freeswitch.org/browse/FS-6499
e57484a FS-6497: --resolve fix for loop initial declaration not allowed
Jira: http://jira.freeswitch.org/browse/FS-6497
cd650f6 removed ldns from tree and used system ldns
13b4115 FS-6500: freebsd does not support the inline backtrace solution in libfreetdm
Jira: http://jira.freeswitch.org/browse/FS-6500
c44404d Add a fallback test for ldns system library
6e23eab removed unused compiler flag that is no longer supported by compiler in libspandsp

Bug:
6072473 FS-6413 update presence_epoch to lock to midnite. fix for broken NOTIFY cseq over TCP after FS is restarted in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6413
ef18915 make sure old_pid_buffer is null terminated in FS core
59734d8 add bounds check to keep rtcp packets with > 5 report blocks from creating a buffer overrun in switch_rtp
c36e630 added unlock on shutdown after grabbing a read write lock of gcache in mod_http_cache
cc06d91  FS-4779 FS-6467 the behaviour from 4479 is now masked behind the param 3pcc-reinvite-bridged-on-ack FS-6467 please test master
Jira: http://jira.freeswitch.org/browse/FS-4779
974cebd SIP-686 changed mod_say (en) to speak full dates when asked to speak a date in the future (rather than only weekday and time).
8d10e65 fix bitwise flag unsetting
d06b137 fixed error caused by the sip_invite_domain being forced to the IPv4 address in mod_sofia
Jira: http://jira.freeswitch.org/browse/FS-6498
d2c2f17  FS-6500: try to do the bounds checking properly using element of the enum
Jira: http://jira.freeswitch.org/browse/FS-6500


Features:
d0de8c0 add heartbeat_use_scheduler variable to force the heartbeat to use the scheduler rather than the media stream and also make it auto-change between modes when going in and out of the media path in FS core
cc928b2 Add helper for running git bisect

Packaging:


Misc:
b55ba90 fixed two potential use after free errors in sofia-sip
9bf98d0 remove useless checks of array == 0 in mod_lcr
e7107f6 Added assert for if /dev/null failed to open in FS core
529099f silence incorrect warnings about null pointer dereference and remove unused code in mod_curl
b0fd845 removed a dead assignment from mod_voicemail
43c9f6d don't unset CCACHE_DIR when bisecting
5f3e98b Fix a use after free in a 'theoretical' case in switch_cache_db_persistent_execute_trans_full where the pre_trans_execute statement fails, but SQLSetAutoCommitAttr succeeds
64c678f freetdm: ftdm_gsm: Fix a few compilation warnings
2e3558c removed redundant NULL check from mod_unimrcp
17f79bc removed an unused variable from mod_lcr
fc25bbc removed unused function in sofia-sip
c1f884c Remove old ldns patch from FS-3110 in mod_enum
Jira: http://jira.freeswitch.org/browse/FS-3110
553dd9b fix assigned but never used issue and code cleanup for readability
7a7c275 remove useless statement in switch_speex
db1a2de removed unnecessary null check from mod_silk
7508481 removed surplus code from mod_lcr
0b8d2c5 add better bounds checking in dtmf_accepting array to avoid buffer overrun in mod_voicemail_ivr
6e41898 fixed case reported by Coverity of theoretical NULL pointer dereference in FS core
d9b5bfa only enable passthru_ptime_mismatch when set to a true value, not when it is set to any value in FS core
2e8572a cleaning out surplus code in mod_lcr
bfacd58 removed some clang warnings
b9b5b0d Avoid dead assignment of return value of execv in FS core
582fa1a fixed a typo in mod_enum
a044b3b removed unused variable ocp in FS core
2ae823f removed unused assignments in FS core
2cdae46 FS-6476 regression where the websocket connection would sometimes drop while reading logical frames in libsofia
Jira: http://jira.freeswitch.org/browse/FS-6476
9db6d5b added additional package name to error response to account for alternate distro in mod_enum
1174413 remove unused variable in switch_core_file
2b1ae83 Remove some dead assignments in ESL
e4d8071 code cleanup in relation to session pointer being null in an app
34c9677 improve null checks in switch_core_cert
3346006 fixed missing unlock in mod_nibblebill
1b43fa8 remove useless variable in switch_nat
8ad8ae8 removed generated file from tree
dbaf499 remove unnecessary null check in mod_say
7e24993 handle null 'status' passed to 'switch_channel_perform_presence' more gracefully in FS core
f38ccbf removing a dead assignment in FS core
64f1098 removed a dead assignment from mod_conference
a4e0929 fixed unused variable that caused a leak of DB handle in nibblebill load config in mod_nibblebill
b205313 more Coverity fixes
af32ca0 Correction to commit 0ba59aa6c2d252886eb4889c5d37fe114e07b4f4 using the correct variable in tel uri param parsing for mod_sofia
946db55 removed unused assignments from FS core
4ec5e5a refactor of nested if statement conditions
d4ba268 removed a dead assignment from FS core
0ebc794 more Coverity code cleanups
c37d0dd using the bisect script automatically builds with make -j
7f18b80 removed unused code from mod_voicemail
Jira: http://jira.freeswitch.org/browse/FS-6503
068ad20 split jsonapi2event and created jsonapi_populate_event in mod_voicemail_ivr
fd4364c removed unused assignments from FS core
6add88b added  check return value for es_say_general_count in mod_say
28a9a40 Various little cleanups, many of them from a clang static analysis
3abcee7 removed unused assignment
cfd8d28 silence clang unused function warnings and get rid of some unused functions in sofia-sip
32c0bfd more Coverity fixes
906467b fix log message on sending tport ping over ws to log error in failure cases in sofia-sip
5c07c3e don't use memory after free when using naptr with mod_enum with multiple routes in mod_enum
0cba8b3 improve error checking for null path in switch_config
b8bd000 More elimination of warnings with clang
e980458 added error handling in case of allocation failure in mod_lcr
ba84e1d Remove dead assignment in libscgi
b3bfa56 add error return if caller profile is missing instead of crashing in mod_lcr
ba6457b more miscellaneous Coverity issues fixed
a5f6808 only enable passthru_ptime_mismatch when set to a true value, not when it is set to any value in FS core
ae3cf0a removed unused assignments in FS core
60bc7da check return value of switch_vasprintf
dac846c cleared up some simple, miscellaneous Coverity issues
4828ecd removed unused variable
99c022b FS-6500: freetdm: Add more enum compliance by defining proper enum values for FTDM_END and FTDM_ANY special state values
Jira: http://jira.freeswitch.org/browse/FS-6500
0f6e364 dropping a dead assignment  in FS core
95d4d00 don't set variable we don't use, and fix off by 1 buffer overflow in 1 case in mod_say
e3b4e6b fix deref before null check in switch_curl
21a2e19 removed dead code reported by Coverity
0d8f954 fixing commit a7108411233058511c59227617e446f28384dbd0 in switch_config
9422156 make sure receive buffer is always null terminated in mod_event_multicast


Stability:
a9a8524 fix read beyond buffer length error in mod_voicemail_ivr
fc40e4a Avoid leaking data_buf in mod_conference
a83fde3 fixed block of code in here twice was writing over expanded, causing it to potentially leak in mod_lcr
ac9741b don't leak xml string in dl_logger in mod_dingaling
6f16e0d fixed leaking if first realloc fails and second one succeeds in mod_redis
c51b55a FS-6491 fixed a crash caused by running two perl scripts from different threads in the same session in switch_channel
Jira: http://jira.freeswitch.org/browse/FS-6491
23b3e17 fixed leak in file handle if fd=0 in mod_redis
a1a3974 fixed leaked body in error case for esl


Performance:


Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users mailing list