< prev index next >
test/jdk/javax/net/ssl/SSLEngine/NoAuthClientAuth.java
Print this page
@@ -92,11 +92,11 @@
*
* This gives a lot of low-level information about operations underway,
* including specific handshake messages, and might be best examined
* after gaining some familiarity with this application.
*/
- private static boolean debug = false;
+ private static boolean debug = true;
private SSLContext sslc;
private SSLEngine clientEngine; // client Engine
private ByteBuffer clientOut; // write side of clientEngine
@@ -241,32 +241,44 @@
serverEngine.getSession().getPeerCertificates();
System.out.println("Client Certificate(s) received");
for (java.security.cert.Certificate c : certs) {
System.out.println(c);
}
- log("Closing server.");
- serverEngine.closeOutbound();
+// log("Closing server.");
+// serverEngine.closeOutbound();
} // nothing.
}
cTOs.flip();
sTOc.flip();
log("----");
+ if (!clientEngine.isInboundDone()) {
clientResult = clientEngine.unwrap(sTOc, clientIn);
log("client unwrap: ", clientResult);
runDelegatedTasks(clientResult, clientEngine);
clientIn.clear();
+ sTOc.compact();
+ } else {
+ sTOc.clear();
+ }
+ if (!serverEngine.isInboundDone()) {
serverResult = serverEngine.unwrap(cTOs, serverIn);
log("server unwrap: ", serverResult);
runDelegatedTasks(serverResult, serverEngine);
serverIn.clear();
-
cTOs.compact();
- sTOc.compact();
+ } else {
+ cTOs.clear();
+ }
+
+ if (hsCompleted == 2) {
+ log("Closing server.");
+ serverEngine.closeOutbound();
+ }
}
}
/*
* Using the SSLContext created during object creation,
< prev index next >