diff options
author | Liong Sauw Ming <ming@teluu.com> | 2012-06-20 10:39:05 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2012-06-20 10:39:05 +0000 |
commit | 8f176cf7c8af5c681b7b616500b6eb32adb28887 (patch) | |
tree | b4aba22b23c9d59115b0f190e161933c05f6d667 /pjsip/src/pjsip/sip_util.c | |
parent | 253bf3c598087e7d4b11d0c0cb3940551becfcdc (diff) |
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
Diffstat (limited to 'pjsip/src/pjsip/sip_util.c')
-rw-r--r-- | pjsip/src/pjsip/sip_util.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/pjsip/src/pjsip/sip_util.c b/pjsip/src/pjsip/sip_util.c index f238f524..ed4fd9c0 100644 --- a/pjsip/src/pjsip/sip_util.c +++ b/pjsip/src/pjsip/sip_util.c @@ -1192,7 +1192,13 @@ static void stateless_send_transport_cb( void *token, } via->transport = pj_str(stateless_data->cur_transport->type_name); - via->sent_by = stateless_data->cur_transport->local_name; + if (tdata->via_addr.host.slen > 0 && + tdata->via_tp == (void *)stateless_data->cur_transport) + { + via->sent_by = tdata->via_addr; + } else { + via->sent_by = stateless_data->cur_transport->local_name; + } via->rport_param = pjsip_cfg()->endpt.disable_rport ? -1 : 0; pjsip_tx_data_invalidate_msg(tdata); |