Module: kamailio Branch: master Commit: 279de09111c0884f01fa002fabc8a200fcc26846 URL: https://github.com/kamailio/kamailio/commit/279de09111c0884f01fa002fabc8a200fcc26846
Author: Daniel-Constantin Mierla <mico...@gmail.com> Committer: Daniel-Constantin Mierla <mico...@gmail.com> Date: 2022-10-12T13:20:19+02:00 topoh: modparam to control header masking - mask_mode - a new parameter - if bit 1 is set, the masking of contact header in 3xx replies is skipped - GH #3256 --- Modified: src/modules/topoh/topoh_mod.c --- Diff: https://github.com/kamailio/kamailio/commit/279de09111c0884f01fa002fabc8a200fcc26846.diff Patch: https://github.com/kamailio/kamailio/commit/279de09111c0884f01fa002fabc8a200fcc26846.patch --- diff --git a/src/modules/topoh/topoh_mod.c b/src/modules/topoh/topoh_mod.c index b8f7e3a852c..55bb18145b0 100644 --- a/src/modules/topoh/topoh_mod.c +++ b/src/modules/topoh/topoh_mod.c @@ -60,6 +60,8 @@ MODULE_VERSION +#define TH_MASKMODE_SLIP3XXCONTACT 1 + /** module parameters */ str _th_key = str_init("aL9.n8~Hm]Z"); str th_cookie_name = str_init("TH"); /* lost parameter? */ @@ -75,6 +77,7 @@ str th_via_prefix = {0, 0}; str th_uri_prefix = {0, 0}; int th_param_mask_callid = 0; +int th_param_mask_mode = 0; int th_sanity_checks = 0; int th_uri_prefix_checks = 0; @@ -103,6 +106,7 @@ static param_export_t params[]={ {"mask_key", PARAM_STR, &_th_key}, {"mask_ip", PARAM_STR, &th_ip}, {"mask_callid", PARAM_INT, &th_param_mask_callid}, + {"mask_mode", PARAM_INT, &th_param_mask_mode}, {"uparam_name", PARAM_STR, &th_uparam_name}, {"uparam_prefix", PARAM_STR, &th_uparam_prefix}, {"vparam_name", PARAM_STR, &th_vparam_name}, @@ -515,7 +519,11 @@ int th_msg_sent(sr_event_param_t *evp) } } else { th_flip_record_route(&msg, 1); - th_mask_contact(&msg); + if(!(th_param_mask_mode & TH_MASKMODE_SLIP3XXCONTACT) + || msg.first_line.u.reply.statuscode < 300 + || msg.first_line.u.reply.statuscode > 399) { + th_mask_contact(&msg); + } if(th_cookie_value.s[0]=='d') { th_mask_callid(&msg); } _______________________________________________ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev