diff --git a/src/ice_transport.cpp b/src/ice_transport.cpp index 74ea71322898b8c720aeb0430ad1eaf697db7ed3..914706f607364d3b54f193ea3b9b03bf370a2c0c 100644 --- a/src/ice_transport.cpp +++ b/src/ice_transport.cpp @@ -262,7 +262,8 @@ add_turn_server(pj_pool_t& pool, pj_ice_strans_cfg& cfg, const TurnServerInfo& i pj_ice_strans_turn_cfg_default(&turn); pj_strdup2_with_null(&pool, &turn.server, ip.toString().c_str()); turn.af = ip.getFamily(); - turn.port = PJ_STUN_PORT; + if (!(turn.port = ip.getPort())) + turn.port = PJ_STUN_PORT; turn.cfg.max_pkt_size = STUN_MAX_PACKET_SIZE; turn.conn_type = cfg.turn.conn_type; diff --git a/src/sip/sipaccountbase.cpp b/src/sip/sipaccountbase.cpp index f1c4c5d1c94563bb94448f16ffcdbea7c0e7b5c0..b590176213a80bfea796fc660d1588bd0aa701f2 100644 --- a/src/sip/sipaccountbase.cpp +++ b/src/sip/sipaccountbase.cpp @@ -449,14 +449,14 @@ SIPAccountBase::getIceOptions() const noexcept cached = cacheTurnV4_ || cacheTurnV6_; if (cacheTurnV4_ && *cacheTurnV4_) { opts.turnServers.emplace_back(TurnServerInfo() - .setUri(*cacheTurnV4_) + .setUri(cacheTurnV4_->toString(true)) .setUsername(turnServerUserName_) .setPassword(turnServerPwd_) .setRealm(turnServerRealm_)); } if (cacheTurnV6_ && *cacheTurnV6_) { opts.turnServers.emplace_back(TurnServerInfo() - .setUri(*cacheTurnV4_) + .setUri(cacheTurnV4_->toString(true)) .setUsername(turnServerUserName_) .setPassword(turnServerPwd_) .setRealm(turnServerRealm_));