mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-24 03:47:39 +00:00
Merge pull request #377 in FS/freeswitch from ~LAZEDO/freeswitch:bugfix/fs-7917 to master
* commit '4c8bf297fb9c78fc59dc607c5c4fb221a873f731': FS-7917 add check for ipv6 in sofia_glue_create_via
This commit is contained in:
commit
59ddb36a48
@ -455,17 +455,18 @@ char *sofia_glue_create_external_via(switch_core_session_t *session, sofia_profi
|
|||||||
|
|
||||||
char *sofia_glue_create_via(switch_core_session_t *session, const char *ip, switch_port_t port, sofia_transport_t transport)
|
char *sofia_glue_create_via(switch_core_session_t *session, const char *ip, switch_port_t port, sofia_transport_t transport)
|
||||||
{
|
{
|
||||||
|
char *ipv6 = strchr(ip, ':');
|
||||||
if (port && port != 5060) {
|
if (port && port != 5060) {
|
||||||
if (session) {
|
if (session) {
|
||||||
return switch_core_session_sprintf(session, "SIP/2.0/%s %s:%d;rport", sofia_glue_transport2str(transport), ip, port);
|
return switch_core_session_sprintf(session, "SIP/2.0/%s %s%s%s:%d;rport", sofia_glue_transport2str(transport), ipv6 ? "[" : "", ip, ipv6 ? "]" : "", port);
|
||||||
} else {
|
} else {
|
||||||
return switch_mprintf("SIP/2.0/%s %s:%d;rport", sofia_glue_transport2str(transport), ip, port);
|
return switch_mprintf("SIP/2.0/%s %s%s%s:%d;rport", sofia_glue_transport2str(transport), ipv6 ? "[" : "", ip, ipv6 ? "]" : "", port);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (session) {
|
if (session) {
|
||||||
return switch_core_session_sprintf(session, "SIP/2.0/%s %s;rport", sofia_glue_transport2str(transport), ip);
|
return switch_core_session_sprintf(session, "SIP/2.0/%s %s%s%s;rport", sofia_glue_transport2str(transport), ipv6 ? "[" : "", ip, ipv6 ? "]" : "");
|
||||||
} else {
|
} else {
|
||||||
return switch_mprintf("SIP/2.0/%s %s;rport", sofia_glue_transport2str(transport), ip);
|
return switch_mprintf("SIP/2.0/%s %s%s%s;rport", sofia_glue_transport2str(transport), ipv6 ? "[" : "", ip, ipv6 ? "]" : "");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user