From: Anthony Minessale Date: Tue, 27 May 2008 15:45:22 +0000 (+0000) Subject: save transport string in record route for sticky nat stuff X-Git-Tag: v1.0.1~460 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9fbfa75d9f150fe49b03cc818dc977ef567ba5ba;p=thirdparty%2Ffreeswitch.git save transport string in record route for sticky nat stuff git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@8694 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index 41bb5e3cab..ba7f840b8a 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -2721,8 +2721,11 @@ void sofia_handle_sip_i_invite(nua_t *nua, sofia_profile_t *profile, nua_handle_ if (sip->sip_contact && sip->sip_contact->m_url) { char tmp[35] = ""; - tech_pvt->record_route = switch_core_session_sprintf(session, "sip:%s@%s:%d", - sip->sip_contact->m_url->url_user, tech_pvt->remote_ip, tech_pvt->remote_port); + sofia_transport_t transport = sofia_glue_url2transport(sip->sip_contact->m_url); + + tech_pvt->record_route = switch_core_session_sprintf(session, "sip:%s@%s:%d;transport=%s", + sip->sip_contact->m_url->url_user, tech_pvt->remote_ip, + tech_pvt->remote_port, sofia_glue_transport2str(transport)); switch_channel_set_variable(channel, "sip_received_ip", tech_pvt->remote_ip); snprintf(tmp, sizeof(tmp), "%d", tech_pvt->remote_port); switch_channel_set_variable(channel, "sip_received_port", tmp);