Bug fix: TLS handshake completion status not updated
diff --git a/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/SSLIOSession.java b/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/SSLIOSession.java index dad1b92..7df71fb 100644 --- a/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/SSLIOSession.java +++ b/httpcore5/src/main/java/org/apache/hc/core5/reactor/ssl/SSLIOSession.java
@@ -417,6 +417,7 @@ private void doHandshake(final IOSession protocolSession) throws IOException { // to SSLEngine.wrap()/unwrap() when that call finishes a handshake. // It is never generated by SSLEngine.getHandshakeStatus(). if (result != null && result.getHandshakeStatus() == HandshakeStatus.FINISHED) { + this.handshakeStateRef.set(TLSHandShakeState.COMPLETE); this.session.setSocketTimeout(this.socketTimeout); if (this.verifier != null) { this.tlsDetails = this.verifier.verify(this.targetEndpoint, this.sslEngine);