From c6e04d4f407f5be4fb60f549b8ecd2440ba0a67e Mon Sep 17 00:00:00 2001 From: Sage Stefonic Date: Tue, 21 May 2024 16:12:55 -0700 Subject: [PATCH 1/2] fix read() to reflect end of stream --- src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java b/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java index f756d46..70ff735 100644 --- a/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java +++ b/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java @@ -2383,7 +2383,12 @@ public class WolfSSLSocket extends SSLSocket { byte[] data = new byte[1]; try { - this.read(data, 0, 1); + int ret = this.read(data, 0, 1); + + /* check for end of stream and other errors */ + if (ret < 0) { + return ret; + } } catch (NullPointerException ne) { throw new IOException(ne); From 4a3f29f7eef6a6a6e43b0631debc5f903cff9a20 Mon Sep 17 00:00:00 2001 From: Sage Stefonic Date: Wed, 22 May 2024 13:37:39 -0700 Subject: [PATCH 2/2] Declare variable at top of method --- src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java b/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java index 70ff735..e2a3fc7 100644 --- a/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java +++ b/src/java/com/wolfssl/provider/jsse/WolfSSLSocket.java @@ -2380,10 +2380,11 @@ public class WolfSSLSocket extends SSLSocket { @Override public synchronized int read() throws IOException { + int ret; byte[] data = new byte[1]; try { - int ret = this.read(data, 0, 1); + ret = this.read(data, 0, 1); /* check for end of stream and other errors */ if (ret < 0) {