From ae32dc9cff2151f77e576fd50ec8c0a792682bc4 Mon Sep 17 00:00:00 2001 From: Nick Bolton Date: Wed, 29 Oct 2025 13:50:40 +0000 Subject: [PATCH] Add SSL_OP_IGNORE_UNEXPECTED_EOF option for TLS --- src/lib/net/InverseSockets/SecureClientSocket.cpp | 1 - src/lib/net/InverseSockets/SslApi.cpp | 4 +++- src/lib/net/SecureSocket.cpp | 6 ++++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/lib/net/InverseSockets/SecureClientSocket.cpp b/src/lib/net/InverseSockets/SecureClientSocket.cpp index adbf3edaa..47f41684b 100644 --- a/src/lib/net/InverseSockets/SecureClientSocket.cpp +++ b/src/lib/net/InverseSockets/SecureClientSocket.cpp @@ -385,7 +385,6 @@ void SecureClientSocket::checkResult(int status, int &retry) void SecureClientSocket::disconnect() { - sendEvent(getEvents()->forISocket().stopRetry()); sendEvent(getEvents()->forISocket().disconnected()); sendEvent(getEvents()->forIStream().inputShutdown()); } diff --git a/src/lib/net/InverseSockets/SslApi.cpp b/src/lib/net/InverseSockets/SslApi.cpp index 7d607af9a..968531e89 100644 --- a/src/lib/net/InverseSockets/SslApi.cpp +++ b/src/lib/net/InverseSockets/SslApi.cpp @@ -196,7 +196,9 @@ void SslApi::createContext(bool isServer) } // Prevent the usage of of all version prior to TLSv1.2 as they are known to // be vulnerable - SSL_CTX_set_options(m_context, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1); + SSL_CTX_set_options( + m_context, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | SSL_OP_IGNORE_UNEXPECTED_EOF + ); if (m_context) { m_ssl = SSL_new(m_context); diff --git a/src/lib/net/SecureSocket.cpp b/src/lib/net/SecureSocket.cpp index 849cee580..60c2b932a 100644 --- a/src/lib/net/SecureSocket.cpp +++ b/src/lib/net/SecureSocket.cpp @@ -355,7 +355,10 @@ void SecureSocket::initContext(bool server) // Prevent the usage of of all version prior to TLSv1.2 as they are known to // be vulnerable - SSL_CTX_set_options(m_ssl->m_context, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1); + SSL_CTX_set_options( + m_ssl->m_context, + SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | SSL_OP_IGNORE_UNEXPECTED_EOF + ); if (m_ssl->m_context == NULL) { SslLogger::logError(); @@ -594,7 +597,6 @@ void SecureSocket::checkResult(int status, int &retry) void SecureSocket::disconnect() { - sendEvent(getEvents()->forISocket().stopRetry()); sendEvent(getEvents()->forISocket().disconnected()); sendEvent(getEvents()->forIStream().inputShutdown()); }