From: Brian West Date: Thu, 4 Mar 2010 16:44:56 +0000 (+0000) Subject: allow option of contact-host to mirror the sip-ip on a gateway X-Git-Tag: v1.0.6~244 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=074ae31df016494f62f2932b2c58315d21db4ede;p=thirdparty%2Ffreeswitch.git allow option of contact-host to mirror the sip-ip on a gateway git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16896 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index 835155e0b4..a95234f6c6 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -1976,7 +1976,18 @@ static void parse_gateways(sofia_profile_t *profile, switch_xml_t gateways_tag) gateway->register_from = switch_core_sprintf(gateway->pool, "", from_user, !zstr(from_domain) ? from_domain : proxy, register_transport); - sipip = contact_host ? contact_host : profile->extsipip ? profile->extsipip : profile->sipip; + + if (contact_host) { + if (!strcmp(contact_host, "sip-ip")) { + sipip = profile->sipip; + } else { + sipip = contact_host; + } + } else if (profile->extsipip) { + sipip = profile->extsipip; + } else { + sipip = profile->sipip; + } if (extension_in_contact) { format = strchr(sipip, ':') ? "" : "";