sofia-sip 2.0.1 — our warning-clean Sofia-SIP for GABPBX
Our own versioning of the garacil/sofia-sip fork — the Sofia-SIP revision used by GABPBX's chan_sofia channel driver. GABPBX is a fork of Asterisk; chan_sofia is a modern, Sofia-SIP-based drop-in replacement for the aging chan_sip.
A build of Sofia-SIP 1.13.17 that compiles absolutely clean — zero warnings, zero errors — on GCC 14 and OpenSSL 3, with no behavior or ABI change.
Version
- Our release: 2.0.1
- Base: upstream 1.13.17 (
AC_INITunchanged, sopkg-config --modversion sofia-sip-uareports1.13.17and the headers install undersofia-sip-1.13) - soname: libsofia-sip-ua.so.0.6.0 (unchanged — binary drop-in)
What changed (all 25 GCC 14 / OpenSSL 3 warnings → 0)
- Array-parameter bound mismatches (
-Warray-parameter, new in GCC 14): prototype/definition array-of-one / pointer spellings aligned —HEAP_DECLARE/HTABLEmacros andsu_home_stat_add(),bsd_localinfo(),nua_destroy_event(). Array params decay to pointers → no ABI change; public prototypes untouched. - OpenSSL 3.0 deprecations (
-Wdeprecated-declarations): one-shotEVP_Digest/EVP_sha1for the WebSocket-handshake SHA-1; version-gatedERR_func_error_string; DH parameters read as a genericEVP_PKEYand installed withSSL_CTX_set0_tmp_dh_pkey()from 3.0 on (with anEVP_PKEY_is_a("DH")guard and correct ownership), pre-3.0 path unchanged;TLSv1_client_method()→TLS_client_method()bounded to exactly TLS 1.0 in the STUN client. - Const-qualifier discard (
-Wdiscarded-qualifiers): one parser's scan pointers over a mutable buffer. - Unused static declaration (
-Wunused-function): a private prototype moved out of a shared header.
Collaboration
Happy to collaborate with upstream — see freeswitch#326.