From ac8d983ce6bfb71b6200d97b8ea3d0fc14d15d6b Mon Sep 17 00:00:00 2001 From: Alexandre Savard <alexandre.savard@savoirfairelinux.com> Date: Tue, 24 Apr 2012 18:16:49 -0400 Subject: [PATCH] #9910: fix contact header in outgoing request if via parameter are present --- daemon/src/sip/sipaccount.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/daemon/src/sip/sipaccount.cpp b/daemon/src/sip/sipaccount.cpp index fd5b198a41..e553300671 100644 --- a/daemon/src/sip/sipaccount.cpp +++ b/daemon/src/sip/sipaccount.cpp @@ -807,8 +807,18 @@ std::string SIPAccount::getContactHeader() const // Else we determine this infor based on transport information std::string address, port; + std::ostringstream portstr; + link_->sipTransport.findLocalAddressFromTransport(transport_, transportType, address, port); + if (!receivedParameter_.empty()) + address = receivedParameter_; + + if (rPort_ != -1) { + portstr << rPort_; + port = portstr.str(); + } + // UDP does not require the transport specification std::string scheme; std::string transport; -- GitLab