Skip to content

Commit 14bb27b

Browse files
committed
JSSE: fix SSLEngine behavior for SSL_shutdown() when WOLFSSL_ERROR_CODE_OPENSSL is defined
1 parent 2e899cc commit 14bb27b

2 files changed

Lines changed: 7 additions & 3 deletions

File tree

src/java/com/wolfssl/provider/jsse/WolfSSLEngine.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,11 @@ private int ClosingConnection() {
203203
this.outBoundOpen = false;
204204
hs = SSLEngineResult.HandshakeStatus.NOT_HANDSHAKING;
205205
}
206-
else if (ret == WolfSSL.SSL_SHUTDOWN_NOT_DONE) {
206+
/* wolfSSL_shutdown() will return either SSL_SHUTDOWN_NOT_DONE (2), or
207+
* will map that to 0 if WOLFSSL_ERROR_CODE_OPENSSL is defined. Either
208+
* should indicate that the full bidirectional shutdown has not
209+
* completed. */
210+
else if (ret == WolfSSL.SSL_SHUTDOWN_NOT_DONE || ret == 0) {
207211
hs = SSLEngineResult.HandshakeStatus.NEED_UNWRAP;
208212
}
209213
else {

src/test/com/wolfssl/provider/jsse/test/WolfSSLTestFactory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -466,8 +466,8 @@ protected int testConnection(SSLEngine server, SSLEngine client,
466466
printHex(serToCli);
467467
}
468468

469-
System.out.println("cliToSer remaning = " + cliToSer.remaining());
470-
System.out.println("serToCli remaning = " + serToCli.remaining());
469+
System.out.println("cliToSer remaining = " + cliToSer.remaining());
470+
System.out.println("serToCli remaining = " + serToCli.remaining());
471471
}
472472
result = client.unwrap(serToCli, cliPlain);
473473
if (extraDebug) {

0 commit comments

Comments
 (0)