diff --git a/src/sip/sipaccount.cpp b/src/sip/sipaccount.cpp index b5b4beec1da782fe9d267a352d7b3fee61fcc252..75a9ac442a7c441efdc6bbfe4345462e48f64121 100644 --- a/src/sip/sipaccount.cpp +++ b/src/sip/sipaccount.cpp @@ -1,4 +1,4 @@ -/* +/* * Copyright (C) 2004-2021 Savoir-faire Linux Inc. * * Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com> @@ -812,7 +812,7 @@ SIPAccount::doRegister1_() } } - link_.resolveSrvName(hostname_, + link_.resolveSrvName(hasServiceRoute() ? getServiceRoute() : hostname_, tlsEnable_ ? PJSIP_TRANSPORT_TLS : PJSIP_TRANSPORT_UDP, [w = weak()](std::vector<IpAddr> host_ips) { if (auto acc = w.lock()) { @@ -1107,18 +1107,7 @@ SIPAccount::sendRegister() void SIPAccount::setUpTransmissionData(pjsip_tx_data* tdata, long transportKeyType) { - if (hasServiceRoute()) { - IpAddr proxyServer {getServiceRoute()}; - if (proxyServer.getPort() == 0) - proxyServer.setPort(sip_utils::DEFAULT_SIP_PORT); - auto ai = &tdata->dest_info; - ai->name = pj_strdup3(tdata->pool, hostname_.c_str()); - ai->addr.count = 1; - ai->addr.entry[0].type = (pjsip_transport_type_e) transportKeyType; - pj_memcpy(&ai->addr.entry[0].addr, proxyServer.pjPtr(), sizeof(pj_sockaddr)); - ai->addr.entry[0].addr_len = proxyServer.getLength(); - ai->cur_addr = 0; - } else if (hostIp_) { + if (hostIp_) { auto ai = &tdata->dest_info; ai->name = pj_strdup3(tdata->pool, hostname_.c_str()); ai->addr.count = 1;