From 0956c1d5f79cc6fb0536ee6739a7c3886c8ffb7f Mon Sep 17 00:00:00 2001
From: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
Date: Wed, 7 Feb 2018 10:15:53 -0500
Subject: [PATCH] tls: fix conccurent access

rxQueue_ was not protected on one place causing troubles
and crashes in case of conccurent accesses.
Add a mutex lock to protect it.

Change-Id: Icca7516c325d321a1d8773dbb9e1cd2a18036c41
Reviewed-by: Adrien Beraud <adrien.beraud@savoirfairelinux.com>
---
 src/security/tls_session.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/security/tls_session.cpp b/src/security/tls_session.cpp
index ede53dba09..97f4212bce 100644
--- a/src/security/tls_session.cpp
+++ b/src/security/tls_session.cpp
@@ -623,6 +623,7 @@ TlsSession::TlsSessionImpl::recvRaw(void* buf, size_t size)
         return -1;
     }
 
+    std::lock_guard<std::mutex> lk {rxMutex_};
     if (rxQueue_.empty()) {
         gnutls_transport_set_errno(session_, EAGAIN);
         return -1;
-- 
GitLab