From 8f176cf7c8af5c681b7b616500b6eb32adb28887 Mon Sep 17 00:00:00 2001 From: Liong Sauw Ming Date: Wed, 20 Jun 2012 10:39:05 +0000 Subject: Fixed #1537: Via rewrite: putting the right IP address in Via sent-by for outgoing requests git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4173 74dad513-b988-da41-8d7b-12977e46ad98 --- pjsip/src/pjsua-lib/pjsua_call.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'pjsip/src/pjsua-lib/pjsua_call.c') diff --git a/pjsip/src/pjsua-lib/pjsua_call.c b/pjsip/src/pjsua-lib/pjsua_call.c index ccc06538..ab7fd1f7 100644 --- a/pjsip/src/pjsua-lib/pjsua_call.c +++ b/pjsip/src/pjsua-lib/pjsua_call.c @@ -715,6 +715,9 @@ PJ_DEF(pj_status_t) pjsua_call_make_call(pjsua_acc_id acc_id, */ pjsip_dlg_inc_lock(dlg); + if (acc->cfg.allow_via_rewrite && acc->via_addr.host.slen > 0) + pjsip_dlg_set_via_sent_by(dlg, &acc->via_addr, acc->via_tp); + /* Calculate call's secure level */ call->secure_level = get_secure_level(acc_id, dest_uri); @@ -1170,6 +1173,13 @@ pj_bool_t pjsua_call_on_incoming(pjsip_rx_data *rdata) goto on_return; } + if (pjsua_var.acc[acc_id].cfg.allow_via_rewrite && + pjsua_var.acc[acc_id].via_addr.host.slen > 0) + { + pjsip_dlg_set_via_sent_by(dlg, &pjsua_var.acc[acc_id].via_addr, + pjsua_var.acc[acc_id].via_tp); + } + /* Set credentials */ if (pjsua_var.acc[acc_id].cred_cnt) { pjsip_auth_clt_set_credentials(&dlg->auth_sess, -- cgit v1.2.3