From 2039266faa9d5c48ec0054994fa15b839c9c30f3 Mon Sep 17 00:00:00 2001 From: Chris Conlon Date: Thu, 30 Apr 2026 16:35:49 -0600 Subject: [PATCH] JSSE: send shutdown alert when doHandshake() rejects new session --- .../com/wolfssl/provider/jsse/WolfSSLEngineHelper.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/java/com/wolfssl/provider/jsse/WolfSSLEngineHelper.java b/src/java/com/wolfssl/provider/jsse/WolfSSLEngineHelper.java index aa248c8..f77db6f 100644 --- a/src/java/com/wolfssl/provider/jsse/WolfSSLEngineHelper.java +++ b/src/java/com/wolfssl/provider/jsse/WolfSSLEngineHelper.java @@ -1696,7 +1696,7 @@ public class WolfSSLEngineHelper { /* send CloseNotify */ /* TODO: SunJSSE sends a Handshake Failure alert instead here */ this.ssl.shutdownSSL(); - } catch (SocketException e) { + } catch (SocketException | SocketTimeoutException e) { throw new SSLException(e); } @@ -1712,6 +1712,13 @@ public class WolfSSLEngineHelper { WolfSSLDebug.log(getClass(), WolfSSLDebug.INFO, () -> "session creation not allowed"); + try { + /* send CloseNotify so peer is not left hanging */ + this.ssl.shutdownSSL(); + } catch (SocketException | SocketTimeoutException e) { + throw new SSLException(e); + } + return WolfSSL.SSL_HANDSHAKE_FAILURE; }