Module: kamailio Branch: 5.8 Commit: 69f667fe9b95d09a642cb7edd7f16ce09bbac3f1 URL: https://github.com/kamailio/kamailio/commit/69f667fe9b95d09a642cb7edd7f16ce09bbac3f1
Author: Daniel-Constantin Mierla <mico...@gmail.com> Committer: Daniel-Constantin Mierla <mico...@gmail.com> Date: 2024-04-03T12:21:37+02:00 core: msg translator - duplicate reply via xavp params and handle errors (cherry picked from commit 5f83d4f9c447f5a7e3de8336dc0e076b10e43833) --- Modified: src/core/msg_translator.c --- Diff: https://github.com/kamailio/kamailio/commit/69f667fe9b95d09a642cb7edd7f16ce09bbac3f1.diff Patch: https://github.com/kamailio/kamailio/commit/69f667fe9b95d09a642cb7edd7f16ce09bbac3f1.patch --- diff --git a/src/core/msg_translator.c b/src/core/msg_translator.c index b54eded3f89..acd5911867a 100644 --- a/src/core/msg_translator.c +++ b/src/core/msg_translator.c @@ -2362,6 +2362,7 @@ char *generate_res_buf_from_sip_res( char *buf; unsigned int len; str xparams; + str sdup; sr_lump_t *anchor; buf = msg->buf; @@ -2393,11 +2394,18 @@ char *generate_res_buf_from_sip_res( anchor = anchor_lump(msg, msg->via2->params.s + msg->via2->params.len - msg->buf, 0, 0); - if(anchor != NULL) { - if(insert_new_lump_after(anchor, xparams.s, xparams.len, 0) - == 0) { - LM_ERR("unable to add via reply xavp params\n"); - } + if(anchor == NULL) { + LM_ERR("unable to get the anchor\n"); + goto error; + } + if(pkg_str_dup(&sdup, &xparams) < 0) { + PKG_MEM_ERROR; + goto error; + } + if(insert_new_lump_after(anchor, sdup.s, sdup.len, 0) == 0) { + LM_ERR("unable to add via reply xavp params\n"); + pkg_free(sdup.s); + goto error; } } } _______________________________________________ Kamailio (SER) - Development Mailing List To unsubscribe send an email to sr-dev-le...@lists.kamailio.org