From 62e2928889813ca225faa6c26549f71d5c707fea Mon Sep 17 00:00:00 2001 From: Mike Jerris Date: Thu, 5 Jan 2017 15:06:42 -0600 Subject: [PATCH] FS-9915: [mod_sofia] fix non null terminated parsed sip body being passed in when sending to sip messages in a row on tcp in a single packet --- src/mod/endpoints/mod_sofia/sofia.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index 693ebcc849..369277e2d9 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -1601,6 +1601,12 @@ static void our_sofia_event_callback(nua_event_t event, goto done; } + if (sip && sip->sip_payload && sip->sip_payload->pl_data) { + if (sip->sip_payload->pl_len != strlen(sip->sip_payload->pl_data)) { + sip->sip_payload->pl_data = su_strndup(nh->nh_home, sip->sip_payload->pl_data, sip->sip_payload->pl_len); + } + } + switch (event) { case nua_r_get_params: case nua_i_fork: