Skip to content

TELCORE-120: fix mod_xml_rpc build with debian trixie / gcc 14 - #590

Open
damirn wants to merge 1 commit into
damir/telcore-176-sync-freeswitch-fork-with-upstream-v1111from
damir/telcore-120-update-freeswitch-fork-to-build-on-debian-trixie
Open

TELCORE-120: fix mod_xml_rpc build with debian trixie / gcc 14#590
damirn wants to merge 1 commit into
damir/telcore-176-sync-freeswitch-fork-with-upstream-v1111from
damir/telcore-120-update-freeswitch-fork-to-build-on-debian-trixie

Conversation

@damirn

@damirn damirn commented May 19, 2026

Copy link
Copy Markdown

Summary

  • src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c: declare the local bind address as struct in_addr addr (was in_addr_t); assign through addr.s_addr = inet_addr(...) (was addr = inet_addr(...)).

Why

The bundled libs/xmlrpc-c/include/xmlrpc-c/abyss.h declares

ServerCreate(... struct in_addr * const addrP, ...)

but the 2019 telnyx fork patch cf68bd0164a backing IP-bind support declared the local var as in_addr_t (a uint32_t) and passed &addr. gcc ≤ 13 reported this as a -Wincompatible-pointer-types warning; gcc 14 (Debian Trixie default) promotes it to a hard error.

Wire behavior is unchanged — struct in_addr is just { uint32_t s_addr; } and the network-order layout is identical. The patch only routes the assignment through s_addr so the type checker is happy.

Test plan

  • Build FS in freeswitch-docker-base:1.16.0 (Trixie) — mod_xml_rpc compiles
  • xml_rpc.conf http-address setting still binds the configured interface (smoke: start FS with http-address set, ss -lntp shows the bind)

@damirn
damirn force-pushed the damir/telcore-120-update-freeswitch-fork-to-build-on-debian-trixie branch from a4a4d9a to a5aaba7 Compare May 19, 2026 18:40
@damirn
damirn changed the base branch from telnyx/telephony/deploy-development to damir/telcore-81-upstream-sync-with-freeswitch-v1110-release May 19, 2026 18:40
…gcc 14

Bundled libs/xmlrpc-c declares
  ServerCreate(... struct in_addr * const addrP, ...)
but the 2019 telnyx fork patch (cf68bd0) backing IP-bind support declared
the local as in_addr_t (a uint32_t) and passed &addr. gcc <= 13 reported this
as -Wincompatible-pointer-types (warning); gcc 14 (Debian Trixie default)
promotes it to a hard error. Wire behavior is unchanged - struct in_addr is
just { uint32_t s_addr; } - we just store the address through s_addr now.
@damirn
damirn force-pushed the damir/telcore-120-update-freeswitch-fork-to-build-on-debian-trixie branch from a5aaba7 to 8e2febf Compare June 30, 2026 11:45
@damirn damirn changed the title TELCORE-120: fix mod_xml_rpc 2019 in_addr_t/in_addr ptr-type bug for gcc 14 TELCORE-120: fix mod_xml_rpc build with debian trixie / gcc 14 Jun 30, 2026
@damirn
damirn changed the base branch from damir/telcore-81-upstream-sync-with-freeswitch-v1110-release to damir/telcore-176-sync-freeswitch-fork-with-upstream-v1111 August 7, 2026 12:21
@damirn

damirn commented Aug 7, 2026

Copy link
Copy Markdown
Author

updated target branch

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant