diff --git a/src/mod/endpoints/mod_sofia/sofia_glue.c b/src/mod/endpoints/mod_sofia/sofia_glue.c index 55f948ce74..cd15913f5d 100644 --- a/src/mod/endpoints/mod_sofia/sofia_glue.c +++ b/src/mod/endpoints/mod_sofia/sofia_glue.c @@ -7008,7 +7008,8 @@ switch_status_t sofia_glue_send_notify(sofia_profile_t *profile, const char *use contact_str = profile->tcp_public_contact; break; case SOFIA_TRANSPORT_TCP_TLS: - contact_str = profile->tls_public_contact; + contact_str = sofia_test_pflag(profile, PFLAG_TLS) ? + profile->tls_public_contact : profile->tcp_public_contact; break; default: contact_str = profile->public_url; diff --git a/src/mod/endpoints/mod_sofia/sofia_presence.c b/src/mod/endpoints/mod_sofia/sofia_presence.c index b1bc009df5..95dfa521e6 100644 --- a/src/mod/endpoints/mod_sofia/sofia_presence.c +++ b/src/mod/endpoints/mod_sofia/sofia_presence.c @@ -2222,7 +2222,8 @@ static void _send_presence_notify(sofia_profile_t *profile, contact_str = profile->tcp_public_contact; break; case SOFIA_TRANSPORT_TCP_TLS: - contact_str = profile->tls_public_contact; + contact_str = sofia_test_pflag(profile, PFLAG_TLS) ? + profile->tls_public_contact : profile->tcp_public_contact; break; default: contact_str = profile->public_url; @@ -3919,9 +3920,11 @@ void sofia_presence_handle_sip_i_subscribe(int status, } } else if (switch_stristr("port=tls", contact->m_url->url_params)) { if (np.is_auto_nat) { - cs = profile->tls_public_contact; + cs = sofia_test_pflag(profile, PFLAG_TLS) ? + profile->tls_public_contact : profile->tcp_public_contact; } else { - cs = profile->tls_contact; + cs = sofia_test_pflag(profile, PFLAG_TLS) ? + profile->tls_contact : profile->tcp_contact; } }