From 61196f55f5d92589369b4fe1df9a790925d8f715 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Blin?= <sebastien.blin@savoirfairelinux.com> Date: Fri, 31 Jan 2020 13:34:59 -0500 Subject: [PATCH] tls session: use newState and call onStateChange's callback Change-Id: I7fb16f21046eaf4bb6aa88a3af3d97da4c0a4e08 --- src/jamidht/p2p.cpp | 4 ++-- src/security/tls_session.cpp | 4 ++-- src/sip/siptransport.cpp | 1 - 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/jamidht/p2p.cpp b/src/jamidht/p2p.cpp index 2a0cf2d8a5..9b6463ab5e 100644 --- a/src/jamidht/p2p.cpp +++ b/src/jamidht/p2p.cpp @@ -490,8 +490,8 @@ private: *peerCertificate_); tls_ep_->setOnStateChange([this, ice=std::move(ice)] (tls::TlsSessionState state) { if (state == tls::TlsSessionState::SHUTDOWN) { - JAMI_WARN() << "TLS connection failure from peer " - << peer_.toString(); + if (!connected_) + JAMI_WARN() << "TLS connection failure from peer " << peer_.toString(); ice->cancelOperations(); // This will stop current PeerChannel operations cancel(); } else if (state == tls::TlsSessionState::ESTABLISHED) { diff --git a/src/security/tls_session.cpp b/src/security/tls_session.cpp index d2fa9beea1..b39dcb4239 100644 --- a/src/security/tls_session.cpp +++ b/src/security/tls_session.cpp @@ -316,7 +316,7 @@ TlsSession::TlsSessionImpl::TlsSessionImpl(std::unique_ptr<SocketType>&& transpo TlsSession::TlsSessionImpl::~TlsSessionImpl() { - state_ = TlsSessionState::SHUTDOWN; + newState_ = TlsSessionState::SHUTDOWN; stateCondition_.notify_all(); rxCv_.notify_all(); thread_.join(); @@ -1305,7 +1305,7 @@ TlsSession::currentCipherSuiteId(std::array<uint8_t, 2>& cs_id) const void TlsSession::shutdown() { - pimpl_->state_ = TlsSessionState::SHUTDOWN; + pimpl_->newState_ = TlsSessionState::SHUTDOWN; pimpl_->stateCondition_.notify_all(); pimpl_->rxCv_.notify_one(); // unblock waiting FSM } diff --git a/src/sip/siptransport.cpp b/src/sip/siptransport.cpp index 1d3738d35d..c2d69c8123 100644 --- a/src/sip/siptransport.cpp +++ b/src/sip/siptransport.cpp @@ -214,7 +214,6 @@ SipTransportBroker::transportStateChanged(pjsip_transport* tp, std::lock_guard<std::mutex> lock(transportMapMutex_); auto key = transports_.find(tp); if (key == transports_.end()) { - JAMI_WARN("spurious pjsip transport state change"); return; } -- GitLab