From a21f1d8ce909f0459a90b6bd16d735af7415a019 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Thu, 10 Jun 2021 17:03:24 -0400
Subject: [PATCH] tls_session: stop handshake on interrupted due to a shutdown

Change-Id: I4deaafb9b8c6f3df675049c7c3a95f7924983503
---
 src/security/tls_session.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/security/tls_session.cpp b/src/security/tls_session.cpp
index e2b959d403..3e6d79a30a 100644
--- a/src/security/tls_session.cpp
+++ b/src/security/tls_session.cpp
@@ -1158,7 +1158,7 @@ TlsSession::TlsSessionImpl::handleStateHandshake(TlsSessionState state)
              and state_.load() != TlsSessionState::SHUTDOWN);
 
     // Stop on fatal error
-    if (gnutls_error_is_fatal(ret)) {
+    if (gnutls_error_is_fatal(ret) || state_.load() == TlsSessionState::SHUTDOWN) {
         JAMI_ERR("[TLS] handshake failed: %s", gnutls_strerror(ret));
         return TlsSessionState::SHUTDOWN;
     }
-- 
GitLab