From 6be5b5d22eb5d5c7469f5356f88b873758f37cb6 Mon Sep 17 00:00:00 2001 From: Jan Willamowius Date: Thu, 23 May 2019 13:12:22 +0200 Subject: [PATCH] fix hangup when making many TLS calls quickly one after another --- ProxyChannel.cxx | 5 ++++- changes.txt | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ProxyChannel.cxx b/ProxyChannel.cxx index 32cfc745..511a6082 100644 --- a/ProxyChannel.cxx +++ b/ProxyChannel.cxx @@ -15201,7 +15201,10 @@ TLSCallSignalSocket::TLSCallSignalSocket(CallSignalSocket * s, WORD port) : Call TLSCallSignalSocket::~TLSCallSignalSocket() { if (m_ssl) { - SSL_shutdown(m_ssl); + ::shutdown(GetHandle(), SHUT_WR); + // don't call SSL_shutdown here, it will end other connections from the same parent context + // not sure why, but it does + //SSL_shutdown(m_ssl); SSL_free(m_ssl); m_ssl = NULL; } diff --git a/changes.txt b/changes.txt index 9b57bfec..b1908046 100644 --- a/changes.txt +++ b/changes.txt @@ -1,5 +1,6 @@ Changes from 5.2 to 5.3 ======================= +- BUGFIX(ProxyChannel.cxx) fix hangup when making many TLS calls quickly one after another - BUGFIX(RasSrv.cxx) don't require H.460.22 parameters in ARQs - BUGFIX(ProxyChannel.cxx) fix TLS without LARGE_FDSET - BUGFIX(ProxyChannel.cxx) don't send H.460.22 priority field in SCI