From 5a3087e5fb4fa22a7f01bc5630d25e4edb6a2f6a Mon Sep 17 00:00:00 2001 From: Julien Wadel Date: Mon, 17 Feb 2020 14:24:27 +0100 Subject: [PATCH] Set TLS as default --- .../settings/AccountSettingsModel.cpp | 18 +++++----- .../sip-addresses/SipAddressesModel.cpp | 33 ++++++++++--------- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/src/components/settings/AccountSettingsModel.cpp b/src/components/settings/AccountSettingsModel.cpp index 869e128da..ee3e42ec6 100644 --- a/src/components/settings/AccountSettingsModel.cpp +++ b/src/components/settings/AccountSettingsModel.cpp @@ -117,21 +117,21 @@ QVariantMap AccountSettingsModel::getProxyConfigDescription (const shared_ptr
  • address = proxyConfig->getIdentityAddress(); map["sipAddress"] = address - ? Utils::coreStringToAppString(proxyConfig->getIdentityAddress()->asString()) + ? QString::fromStdString(proxyConfig->getIdentityAddress()->asString()) : QString(""); } - map["serverAddress"] = Utils::coreStringToAppString(proxyConfig->getServerAddr()); + map["serverAddress"] = QString::fromStdString(proxyConfig->getServerAddr()); map["registrationDuration"] = proxyConfig->getPublishExpires(); - QString transport = QString::fromStdString(proxyConfig->getTransport()); - if(transport == "") - map["transport"] = "tls";// Set to TLS by default - else - map["transport"] = transport; + + if( map["serverAddress"].toString().toUpper().contains("TRANSPORT="))// transport has been specified : let the RFC select the transport + map["transport"] = QString::fromStdString(proxyConfig->getTransport()); + else// Set to TLS as default + map["transport"] = "tls"; if( proxyConfig->getRoutes().size() > 0) - map["route"] = Utils::coreStringToAppString(proxyConfig->getRoutes().front()); + map["route"] = QString::fromStdString(proxyConfig->getRoutes().front()); else map["route"] = ""; - map["contactParams"] = Utils::coreStringToAppString(proxyConfig->getContactParameters()); + map["contactParams"] = QString::fromStdString(proxyConfig->getContactParameters()); map["avpfInterval"] = proxyConfig->getAvpfRrInterval(); map["registerEnabled"] = proxyConfig->registerEnabled(); map["publishPresence"] = proxyConfig->publishEnabled(); diff --git a/src/components/sip-addresses/SipAddressesModel.cpp b/src/components/sip-addresses/SipAddressesModel.cpp index 78ef2d5ca..b01052e57 100644 --- a/src/components/sip-addresses/SipAddressesModel.cpp +++ b/src/components/sip-addresses/SipAddressesModel.cpp @@ -144,23 +144,26 @@ SipAddressObserver *SipAddressesModel::getSipAddressObserver (const QString &pee // ----------------------------------------------------------------------------- QString SipAddressesModel::getTransportFromSipAddress (const QString &sipAddress) { - const shared_ptr address = linphone::Factory::get()->createAddress( - Utils::appStringToCoreString(sipAddress) - ); + if( sipAddress.toUpper().contains("TRANSPORT=")) + {// Transport has been specified : check for it + const shared_ptr address = linphone::Factory::get()->createAddress( + Utils::appStringToCoreString(sipAddress) + ); - if (!address) - return QString("TLS"); // Return TLS by default + if (!address) + return QString("TLS"); // Return TLS by default - switch (address->getTransport()) { - case linphone::TransportType::Udp: - return QStringLiteral("UDP"); - case linphone::TransportType::Tcp: - return QStringLiteral("TCP"); - case linphone::TransportType::Tls: - return QStringLiteral("TLS"); - case linphone::TransportType::Dtls: - return QStringLiteral("DTLS"); - } + switch (address->getTransport()) { + case linphone::TransportType::Udp: + return QStringLiteral("UDP"); + case linphone::TransportType::Tcp: + return QStringLiteral("TCP"); + case linphone::TransportType::Tls: + return QStringLiteral("TLS"); + case linphone::TransportType::Dtls: + return QStringLiteral("DTLS"); + } + } return QString("TLS"); }