This is an automated email from the ASF dual-hosted git repository.

johnnyv pushed a commit to branch 2.2.X
in repository https://gitbox.apache.org/repos/asf/mina.git

commit a7ceb0817ce1c2b1f12cfdb30ecfc37e130be180
Author: Jonathan Valliere <john...@apache.org>
AuthorDate: Thu Sep 9 14:01:35 2021 -0400

    Fix size == 0 check; removes unused tests
---
 .../org/apache/mina/filter/ssl/SSLHandlerG0.java   |   6 +-
 .../apache/mina/filter/ssl/SSLDIRMINA937Test.java  | 167 --------
 .../org/apache/mina/filter/ssl/SSLEngineTest.java  | 465 ---------------------
 .../apache/mina/filter/ssl/emptykeystore.sslTest   | Bin 32 -> 0 bytes
 .../apache/mina/filter/{ssl2 => ssl}/keystore.jks  | Bin
 .../org/apache/mina/filter/ssl/keystore.sslTest    | Bin 1368 -> 0 bytes
 .../mina/filter/{ssl2 => ssl}/truststore.jks       | Bin
 .../org/apache/mina/filter/ssl/truststore.sslTest  | Bin 654 -> 0 bytes
 8 files changed, 3 insertions(+), 635 deletions(-)

diff --git 
a/mina-core/src/main/java/org/apache/mina/filter/ssl/SSLHandlerG0.java 
b/mina-core/src/main/java/org/apache/mina/filter/ssl/SSLHandlerG0.java
index de99b7f..4cf3e17 100644
--- a/mina-core/src/main/java/org/apache/mina/filter/ssl/SSLHandlerG0.java
+++ b/mina-core/src/main/java/org/apache/mina/filter/ssl/SSLHandlerG0.java
@@ -257,7 +257,7 @@ public class SSLHandlerG0 extends SSLHandler {
                }
 
                if (this.mEncodeQueue.isEmpty()) {
-                       if (qwrite(next, request) == false) {
+                       if (this.qwrite(next, request) == false) {
                                if (LOGGER.isDebugEnabled()) {
                                        LOGGER.debug("{} write() - unable to 
write right now, saving request for later", toString(),
                                                        request);
@@ -511,7 +511,7 @@ public class SSLHandlerG0 extends SSLHandler {
                        return;
                }
 
-               if (this.mEncodeQueue.size() != 0) {
+               if (this.mEncodeQueue.size() == 0) {
                        if (LOGGER.isDebugEnabled()) {
                                LOGGER.debug("{} flush() - no saved messages", 
toString());
                        }
@@ -523,7 +523,7 @@ public class SSLHandlerG0 extends SSLHandler {
                        if (LOGGER.isDebugEnabled()) {
                                LOGGER.debug("{} flush() - {}", toString(), 
current);
                        }
-                       if (qwrite(next, current) == false) {
+                       if (this.qwrite(next, current) == false) {
                                this.mEncodeQueue.addFirst(current);
                                break;
                        }
diff --git 
a/mina-core/src/test/java/org/apache/mina/filter/ssl/SSLDIRMINA937Test.java 
b/mina-core/src/test/java/org/apache/mina/filter/ssl/SSLDIRMINA937Test.java
deleted file mode 100644
index da3f66e..0000000
--- a/mina-core/src/test/java/org/apache/mina/filter/ssl/SSLDIRMINA937Test.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- *
- */
-package org.apache.mina.filter.ssl;
-
-import static org.junit.Assert.*;
-import java.io.IOException;
-import java.net.InetSocketAddress;
-import java.security.GeneralSecurityException;
-import java.security.KeyStore;
-import java.security.Security;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-import javax.net.ssl.KeyManagerFactory;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManagerFactory;
-
-import org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder;
-import org.apache.mina.core.service.IoHandlerAdapter;
-import org.apache.mina.core.session.IoSession;
-import org.apache.mina.filter.FilterEvent;
-import org.apache.mina.filter.codec.ProtocolCodecFilter;
-import org.apache.mina.filter.codec.textline.TextLineCodecFactory;
-import org.apache.mina.transport.socket.nio.NioSocketAcceptor;
-import org.apache.mina.transport.socket.nio.NioSocketConnector;
-import org.apache.mina.util.AvailablePortFinder;
-import org.junit.Ignore;
-import org.junit.Test;
-
-/**
- * Test an SSL session where the connection cannot be established with the 
server due to 
- * incompatible protocols (Test for DIRMINA-937)
- *
- * @author <a href="http://mina.apache.org";>Apache MINA Project</a>
- */
-public class SSLDIRMINA937Test {
-    /** A static port used for his test, chosen to avoid collisions */
-    private static final int port = AvailablePortFinder.getNextAvailable(5555);
-
-    /** A JVM independant KEY_MANAGER_FACTORY algorithm */
-    private static final String KEY_MANAGER_FACTORY_ALGORITHM;
-
-    static {
-        String algorithm = 
Security.getProperty("ssl.KeyManagerFactory.algorithm");
-        if (algorithm == null) {
-            algorithm = KeyManagerFactory.getDefaultAlgorithm();
-        }
-
-        KEY_MANAGER_FACTORY_ALGORITHM = algorithm;
-    }
-
-    private static class TestHandler extends IoHandlerAdapter {
-        public void messageReceived(IoSession session, Object message) throws 
Exception {
-            String line = (String) message;
-
-            if (line.startsWith("hello")) {
-                //System.out.println("Server got: 'hello', waiting for 
'send'");
-                Thread.sleep(1500);
-            } else if (line.startsWith("send")) {
-                //System.out.println("Server got: 'send', sending 'data'");
-                session.write("data");
-            }
-        }
-    }
-
-    /**
-     * Starts a Server with the SSL Filter and a simple text line 
-     * protocol codec filter
-     */
-    private static void startServer() throws Exception {
-        NioSocketAcceptor acceptor = new NioSocketAcceptor();
-
-        acceptor.setReuseAddress(true);
-        DefaultIoFilterChainBuilder filters = acceptor.getFilterChain();
-
-        // Inject the SSL filter
-        SSLContext context = createSSLContext("TLSv1");
-        SSLFilter sslFilter = new SSLFilter(context);
-        sslFilter.setEnabledProtocols(new String[] { "TLSv1" });
-        
//sslFilter.setEnabledCipherSuites(getServerCipherSuites(context.getDefaultSSLParameters().getCipherSuites()));
-        filters.addLast("sslFilter", sslFilter);
-
-        // Inject the TestLine codec filter
-        filters.addLast("text", new ProtocolCodecFilter(new 
TextLineCodecFactory()));
-
-        acceptor.setHandler(new TestHandler());
-        acceptor.bind(new InetSocketAddress(port));
-    }
-
-    /**
-     * Starts a client which will connect twice using SSL
-     */
-    private static void startClient(final CountDownLatch counter) throws 
Exception {
-        NioSocketConnector connector = new NioSocketConnector();
-        
-        DefaultIoFilterChainBuilder filters = connector.getFilterChain();
-        SSLFilter sslFilter = new SSLFilter(createSSLContext("TLSv1.1"));
-        sslFilter.setEnabledProtocols(new String[] { "TLSv1.1" });
-        //sslFilter.setEnabledCipherSuites(getClientCipherSuites());
-        filters.addLast("sslFilter", sslFilter);
-        connector.setHandler(new IoHandlerAdapter() {
-            @Override
-            public void messageReceived(IoSession session, Object message) 
throws Exception {
-            }
-
-            @Override
-            public void event(IoSession session, FilterEvent event) throws 
Exception {
-                if (event == SSLEvent.UNSECURED ) {
-                    counter.countDown();
-                }
-            }
-        });
-        connector.connect(new InetSocketAddress("localhost", port));
-    }
-
-    private static SSLContext createSSLContext(String protocol) throws 
IOException, GeneralSecurityException {
-        char[] passphrase = "password".toCharArray();
-
-        SSLContext ctx = SSLContext.getInstance(protocol);
-        KeyManagerFactory kmf = 
KeyManagerFactory.getInstance(KEY_MANAGER_FACTORY_ALGORITHM);
-        TrustManagerFactory tmf = 
TrustManagerFactory.getInstance(KEY_MANAGER_FACTORY_ALGORITHM);
-
-        KeyStore ks = KeyStore.getInstance("JKS");
-        KeyStore ts = KeyStore.getInstance("JKS");
-
-        
ks.load(SSLDIRMINA937Test.class.getResourceAsStream("keystore.sslTest"), 
passphrase);
-        
ts.load(SSLDIRMINA937Test.class.getResourceAsStream("truststore.sslTest"), 
passphrase);
-
-        kmf.init(ks, passphrase);
-        tmf.init(ts);
-        ctx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
-
-        return ctx;
-    }
-
-    /**
-     * Test is ignore as it will cause the build to fail
-     * 
-     * @throws Exception If the test failed
-     */
-    @Test
-    @Ignore("This test is not yet fully functionnal, it servers as the basis 
for validating DIRMINA-937")
-    public void testDIRMINA937() throws Exception {
-        startServer();
-
-        final CountDownLatch counter = new CountDownLatch(1);
-        startClient(counter);
-        assertTrue(counter.await(10, TimeUnit.SECONDS));
-    }
-}
diff --git 
a/mina-core/src/test/java/org/apache/mina/filter/ssl/SSLEngineTest.java 
b/mina-core/src/test/java/org/apache/mina/filter/ssl/SSLEngineTest.java
deleted file mode 100644
index 54937d8..0000000
--- a/mina-core/src/test/java/org/apache/mina/filter/ssl/SSLEngineTest.java
+++ /dev/null
@@ -1,465 +0,0 @@
-package org.apache.mina.filter.ssl;
-
-import static org.junit.Assert.fail;
-
-import java.io.IOException;
-import java.nio.ByteBuffer;
-import java.security.GeneralSecurityException;
-import java.security.KeyStore;
-import java.security.Security;
-import java.util.Deque;
-import java.util.concurrent.BlockingDeque;
-import java.util.concurrent.LinkedBlockingDeque;
-
-import javax.net.ssl.KeyManagerFactory;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.SSLEngine;
-import javax.net.ssl.SSLEngineResult;
-import javax.net.ssl.SSLEngineResult.HandshakeStatus;
-import javax.net.ssl.SSLEngineResult.Status;
-import javax.net.ssl.SSLException;
-import javax.net.ssl.TrustManagerFactory;
-
-import org.apache.mina.core.buffer.IoBuffer;
-import org.junit.Ignore;
-import org.junit.Test;
-
-public class SSLEngineTest {
-       private BlockingDeque<ByteBuffer> clientQueue = new 
LinkedBlockingDeque<>();
-       private BlockingDeque<ByteBuffer> serverQueue = new 
LinkedBlockingDeque<>();
-
-       private class Handshaker implements Runnable {
-               private SSLEngine sslEngine;
-               private ByteBuffer workBuffer;
-               private ByteBuffer emptyBuffer = ByteBuffer.allocate(0);
-
-               private void push(Deque<ByteBuffer> queue, ByteBuffer buffer) {
-                       ByteBuffer result = 
ByteBuffer.allocate(buffer.capacity());
-                       result.put(buffer);
-                       queue.addFirst(result);
-               }
-
-               public void run() {
-                       HandshakeStatus handshakeStatus = 
sslEngine.getHandshakeStatus();
-                       SSLEngineResult result;
-
-                       try {
-                               while (handshakeStatus != 
HandshakeStatus.FINISHED) {
-                                       switch (handshakeStatus) {
-                                               case NEED_TASK:
-                                                       break;
-
-                                               case NEED_UNWRAP:
-                                                       // The SSLEngine waits 
for some input.
-                                                       // We may have received 
too few data (TCP fragmentation)
-                                                       //
-                                                       ByteBuffer data = 
serverQueue.takeLast();
-                                                       result = 
sslEngine.unwrap(data, workBuffer);
-
-                                                       while 
(result.getStatus() == SSLEngineResult.Status.BUFFER_UNDERFLOW) {
-                                                               // We need more 
data, until then, wait.
-                                                               // ByteBuffer 
data = serverQueue.takeLast();
-                                                               result = 
sslEngine.unwrap(data, workBuffer);
-                                                       }
-
-                                                       handshakeStatus = 
sslEngine.getHandshakeStatus();
-                                                       break;
-
-                                               case NEED_WRAP:
-                                               case NOT_HANDSHAKING:
-                                                       result = 
sslEngine.wrap(emptyBuffer, workBuffer);
-
-                                                       workBuffer.flip();
-
-                                                       if 
(workBuffer.hasRemaining()) {
-                                                               
push(clientQueue, workBuffer);
-                                                               
workBuffer.clear();
-                                                       }
-
-                                                       handshakeStatus = 
result.getHandshakeStatus();
-
-                                                       break;
-
-                                               case FINISHED:
-
-                                       }
-                               }
-                       } catch (SSLException e) {
-                               // TODO Auto-generated catch block
-                               e.printStackTrace();
-                       } catch (InterruptedException e) {
-                               // TODO Auto-generated catch block
-                               e.printStackTrace();
-                       }
-               }
-
-               public Handshaker(SSLEngine sslEngine) {
-                       this.sslEngine = sslEngine;
-                       int packetBufferSize = 
sslEngine.getSession().getPacketBufferSize();
-                       workBuffer = ByteBuffer.allocate(packetBufferSize);
-               }
-       }
-
-       /** A JVM independant KEY_MANAGER_FACTORY algorithm */
-       private static final String KEY_MANAGER_FACTORY_ALGORITHM;
-
-       static {
-               String algorithm = 
Security.getProperty("ssl.KeyManagerFactory.algorithm");
-               if (algorithm == null) {
-                       algorithm = KeyManagerFactory.getDefaultAlgorithm();
-               }
-
-               KEY_MANAGER_FACTORY_ALGORITHM = algorithm;
-       }
-
-       /** App data buffer for the client SSLEngine */
-       private IoBuffer inNetBufferClient;
-
-       /** Net data buffer for the client SSLEngine */
-       private IoBuffer outNetBufferClient;
-
-       /** App data buffer for the server SSLEngine */
-       private IoBuffer inNetBufferServer;
-
-       /** Net data buffer for the server SSLEngine */
-       private IoBuffer outNetBufferServer;
-
-       private final IoBuffer emptyBuffer = IoBuffer.allocate(0);
-
-       private static SSLContext createSSLContext() throws IOException, 
GeneralSecurityException {
-               char[] passphrase = "password".toCharArray();
-
-               SSLContext ctx = SSLContext.getInstance("TLS");
-               KeyManagerFactory kmf = 
KeyManagerFactory.getInstance(KEY_MANAGER_FACTORY_ALGORITHM);
-               TrustManagerFactory tmf = 
TrustManagerFactory.getInstance(KEY_MANAGER_FACTORY_ALGORITHM);
-
-               KeyStore ks = KeyStore.getInstance("JKS");
-               KeyStore ts = KeyStore.getInstance("JKS");
-
-               
ks.load(SSLEngineTest.class.getResourceAsStream("keystore.jks"), passphrase);
-               
ts.load(SSLEngineTest.class.getResourceAsStream("truststore.jks"), passphrase);
-
-               kmf.init(ks, passphrase);
-               tmf.init(ts);
-               ctx.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
-
-               return ctx;
-       }
-
-       /**
-        * Decrypt the incoming buffer and move the decrypted data to an 
application
-        * buffer.
-        */
-       private SSLEngineResult unwrap(SSLEngine sslEngine, IoBuffer inBuffer, 
IoBuffer outBuffer) throws SSLException {
-               // We first have to create the application buffer if it does 
not exist
-               if (outBuffer == null) {
-                       outBuffer = IoBuffer.allocate(inBuffer.remaining());
-               } else {
-                       // We already have one, just add the new data into it
-                       outBuffer.expand(inBuffer.remaining());
-               }
-
-               SSLEngineResult res;
-               Status status;
-               HandshakeStatus localHandshakeStatus;
-
-               do {
-                       // Decode the incoming data
-                       res = sslEngine.unwrap(inBuffer.buf(), outBuffer.buf());
-                       status = res.getStatus();
-
-                       // We can be processing the Handshake
-                       localHandshakeStatus = res.getHandshakeStatus();
-
-                       if (status == SSLEngineResult.Status.BUFFER_OVERFLOW) {
-                               // We have to grow the target buffer, it's too 
small.
-                               // Then we can call the unwrap method again
-                               int newCapacity = 
sslEngine.getSession().getApplicationBufferSize();
-
-                               if (inBuffer.remaining() >= newCapacity) {
-                                       // The buffer is already larger than 
the max buffer size suggested by the SSL
-                                       // engine.
-                                       // Raising it any more will not make 
sense and it will end up in an endless
-                                       // loop. Throwing an error is safer
-                                       throw new SSLException("SSL buffer 
overflow");
-                               }
-
-                               inBuffer.expand(newCapacity);
-                               continue;
-                       }
-               } while (((status == SSLEngineResult.Status.OK) || (status == 
SSLEngineResult.Status.BUFFER_OVERFLOW))
-                               && ((localHandshakeStatus == 
SSLEngineResult.HandshakeStatus.NOT_HANDSHAKING)
-                                               || (localHandshakeStatus == 
SSLEngineResult.HandshakeStatus.NEED_UNWRAP)));
-
-               return res;
-       }
-
-       private SSLEngineResult.Status unwrapHandshake(SSLEngine sslEngine, 
IoBuffer appBuffer, IoBuffer netBuffer)
-                       throws SSLException {
-               // Prepare the net data for reading.
-               if ((appBuffer == null) || !appBuffer.hasRemaining()) {
-                       // Need more data.
-                       return SSLEngineResult.Status.BUFFER_UNDERFLOW;
-               }
-
-               SSLEngineResult res = unwrap(sslEngine, appBuffer, netBuffer);
-               HandshakeStatus handshakeStatus = res.getHandshakeStatus();
-
-               // checkStatus(res);
-
-               // If handshake finished, no data was produced, and the status 
is still
-               // ok, try to unwrap more
-               if ((handshakeStatus == 
SSLEngineResult.HandshakeStatus.FINISHED)
-                               && (res.getStatus() == 
SSLEngineResult.Status.OK) && appBuffer.hasRemaining()) {
-                       res = unwrap(sslEngine, appBuffer, netBuffer);
-
-                       // prepare to be written again
-                       if (appBuffer.hasRemaining()) {
-                               appBuffer.compact();
-                       } else {
-                               appBuffer.free();
-                               appBuffer = null;
-                       }
-               } else {
-                       // prepare to be written again
-                       if (appBuffer.hasRemaining()) {
-                               appBuffer.compact();
-                       } else {
-                               appBuffer.free();
-                               appBuffer = null;
-                       }
-               }
-
-               return res.getStatus();
-       }
-
-       /* no qualifier */boolean isInboundDone(SSLEngine sslEngine) {
-               return sslEngine == null || sslEngine.isInboundDone();
-       }
-
-       /* no qualifier */boolean isOutboundDone(SSLEngine sslEngine) {
-               return sslEngine == null || sslEngine.isOutboundDone();
-       }
-
-       /**
-        * Perform any handshaking processing.
-        */
-       /* no qualifier */HandshakeStatus handshake(SSLEngine sslEngine, 
IoBuffer appBuffer, IoBuffer netBuffer)
-                       throws SSLException {
-               SSLEngineResult result;
-               HandshakeStatus handshakeStatus = 
sslEngine.getHandshakeStatus();
-
-               for (;;) {
-                       switch (handshakeStatus) {
-                               case FINISHED:
-                                       // handshakeComplete = true;
-                                       return handshakeStatus;
-
-                               case NEED_TASK:
-                                       // handshakeStatus = doTasks();
-                                       break;
-
-                               case NEED_UNWRAP:
-                                       // we need more data read
-                                       SSLEngineResult.Status status = 
unwrapHandshake(sslEngine, appBuffer, netBuffer);
-                                       handshakeStatus = 
sslEngine.getHandshakeStatus();
-
-                                       return handshakeStatus;
-
-                               case NEED_WRAP:
-                                       result = 
sslEngine.wrap(emptyBuffer.buf(), netBuffer.buf());
-
-                                       while (result.getStatus() == 
SSLEngineResult.Status.BUFFER_OVERFLOW) {
-                                               
netBuffer.capacity(netBuffer.capacity() << 1);
-                                               
netBuffer.limit(netBuffer.capacity());
-
-                                               result = 
sslEngine.wrap(emptyBuffer.buf(), netBuffer.buf());
-                                       }
-
-                                       netBuffer.flip();
-                                       return result.getHandshakeStatus();
-
-                               case NOT_HANDSHAKING:
-                                       result = 
sslEngine.wrap(emptyBuffer.buf(), netBuffer.buf());
-
-                                       while (result.getStatus() == 
SSLEngineResult.Status.BUFFER_OVERFLOW) {
-                                               
netBuffer.capacity(netBuffer.capacity() << 1);
-                                               
netBuffer.limit(netBuffer.capacity());
-
-                                               result = 
sslEngine.wrap(emptyBuffer.buf(), netBuffer.buf());
-                                       }
-
-                                       netBuffer.flip();
-                                       handshakeStatus = 
result.getHandshakeStatus();
-                                       return handshakeStatus;
-
-                               default:
-                                       throw new 
IllegalStateException("error");
-                       }
-               }
-       }
-
-       /**
-        * Do all the outstanding handshake tasks in the current Thread.
-        */
-       private SSLEngineResult.HandshakeStatus doTasks(SSLEngine sslEngine) {
-               /*
-                * We could run this in a separate thread, but I don't see the 
need for this
-                * when used from SSLFilter. Use thread filters in MINA instead?
-                */
-               Runnable runnable;
-               while ((runnable = sslEngine.getDelegatedTask()) != null) {
-                       // Thread thread = new Thread(runnable);
-                       // thread.start();
-                       runnable.run();
-               }
-               return sslEngine.getHandshakeStatus();
-       }
-
-       private HandshakeStatus handshake(SSLEngine sslEngine, HandshakeStatus 
expected, IoBuffer inBuffer,
-                       IoBuffer outBuffer, boolean dumpBuffer) throws 
SSLException {
-               HandshakeStatus handshakeStatus = handshake(sslEngine, 
inBuffer, outBuffer);
-
-               if (handshakeStatus != expected) {
-                       fail();
-               }
-
-               if (dumpBuffer) {
-                       System.out.println("Message:" + outBuffer);
-               }
-
-               return handshakeStatus;
-       }
-
-       @Test
-       @Ignore
-       public void testSSL() throws Exception {
-               // Initialise the client SSLEngine
-               SSLContext sslContextClient = createSSLContext();
-               SSLEngine sslEngineClient = sslContextClient.createSSLEngine();
-               int packetBufferSize = 
sslEngineClient.getSession().getPacketBufferSize();
-               inNetBufferClient = 
IoBuffer.allocate(packetBufferSize).setAutoExpand(true);
-               outNetBufferClient = 
IoBuffer.allocate(packetBufferSize).setAutoExpand(true);
-
-               sslEngineClient.setUseClientMode(true);
-
-               // Initialise the Server SSLEngine
-               SSLContext sslContextServer = createSSLContext();
-               SSLEngine sslEngineServer = sslContextServer.createSSLEngine();
-               packetBufferSize = 
sslEngineServer.getSession().getPacketBufferSize();
-               inNetBufferServer = 
IoBuffer.allocate(packetBufferSize).setAutoExpand(true);
-               outNetBufferServer = 
IoBuffer.allocate(packetBufferSize).setAutoExpand(true);
-
-               sslEngineServer.setUseClientMode(false);
-
-               Handshaker handshakerClient = new Handshaker(sslEngineClient);
-               Handshaker handshakerServer = new Handshaker(sslEngineServer);
-
-               handshakerServer.run();
-
-               HandshakeStatus handshakeStatusClient = 
sslEngineClient.getHandshakeStatus();
-               HandshakeStatus handshakeStatusServer = 
sslEngineServer.getHandshakeStatus();
-
-               // <<< Server
-               // Start the server
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_UNWRAP, null, outNetBufferServer,
-                               false);
-
-               // >>> Client
-               // Now start the client, which will generate a CLIENT_HELLO,
-               // stored into the outNetBufferClient
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NEED_UNWRAP, null, outNetBufferClient, true);
-
-               // <<< Server
-               // Process the CLIENT_HELLO on the server
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_TASK, outNetBufferClient,
-                               outNetBufferServer, false);
-
-               // Process the tasks on the server, prepare the SERVER_HELLO 
message
-               handshakeStatusServer = doTasks(sslEngineServer);
-
-               // We should be ready to generate the SERVER_HELLO message
-               if (handshakeStatusServer != HandshakeStatus.NEED_WRAP) {
-                       fail();
-               }
-
-               // Get the SERVER_HELLO message, with all the associated 
messages
-               // ([Certificate], [ServerKeyExchange], [CertificateRequest], 
ServerHelloDone)
-               outNetBufferServer.clear();
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_UNWRAP, null, outNetBufferServer, true);
-
-               // >>> Client
-               // Process the SERVER_HELLO message on the client
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NEED_TASK, outNetBufferServer,
-                               inNetBufferClient, false);
-
-               // Prepare the client response
-               handshakeStatusClient = doTasks(sslEngineClient);
-
-               // We should get back the Client messages ([Certificate],
-               // ClientKeyExchange, [CertificateVerify])
-               if (handshakeStatusClient != HandshakeStatus.NEED_WRAP) {
-                       fail();
-               }
-
-               // Generate the [Certificate], ClientKeyExchange, 
[CertificateVerify] messages
-               outNetBufferClient.clear();
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NEED_WRAP, null, outNetBufferClient, true);
-
-               // <<< Server
-               // Process the CLIENT_KEY_EXCHANGE on the server
-               outNetBufferServer.clear();
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_TASK, outNetBufferClient,
-                               outNetBufferServer, false);
-
-               // Do the controls
-               handshakeStatusServer = doTasks(sslEngineServer);
-
-               // The server is waiting for more
-               if (handshakeStatusServer != HandshakeStatus.NEED_UNWRAP) {
-                       fail();
-               }
-
-               // >>> Client
-               // The CHANGE_CIPHER_SPEC message generation
-               outNetBufferClient.clear();
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NEED_WRAP, null, outNetBufferClient, true);
-
-               // <<< Server
-               // Process the CHANGE_CIPHER_SPEC on the server
-               outNetBufferServer.clear();
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_UNWRAP, outNetBufferClient,
-                               outNetBufferServer, false);
-
-               // >>> Client
-               // Generate the FINISHED message on thee client
-               outNetBufferClient.clear();
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NEED_UNWRAP, null, outNetBufferClient, true);
-
-               // <<< Server
-               // Process the client FINISHED message
-               outNetBufferServer.clear();
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_WRAP, outNetBufferClient,
-                               outNetBufferServer, false);
-
-               // Generate the CHANGE_CIPHER_SPEC message on the server
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.NEED_WRAP, null, outNetBufferServer, true);
-
-               // >>> Client
-               // Process the server CHANGE_SCIPHER_SPEC message on the client
-               outNetBufferClient.clear();
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NEED_UNWRAP, outNetBufferServer,
-                               outNetBufferClient, false);
-
-               // <<< Server
-               // Generate the server FINISHED message
-               outNetBufferServer.clear();
-               handshakeStatusServer = handshake(sslEngineServer, 
HandshakeStatus.FINISHED, null, outNetBufferServer, true);
-
-               // >>> Client
-               // Process the server FINISHED message on the client
-               outNetBufferClient.clear();
-               handshakeStatusClient = handshake(sslEngineClient, 
HandshakeStatus.NOT_HANDSHAKING, outNetBufferServer,
-                               outNetBufferClient, false);
-       }
-}
diff --git 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl/emptykeystore.sslTest 
b/mina-core/src/test/resources/org/apache/mina/filter/ssl/emptykeystore.sslTest
deleted file mode 100644
index 65d4b65..0000000
Binary files 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl/emptykeystore.sslTest 
and /dev/null differ
diff --git 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl2/keystore.jks 
b/mina-core/src/test/resources/org/apache/mina/filter/ssl/keystore.jks
similarity index 100%
rename from 
mina-core/src/test/resources/org/apache/mina/filter/ssl2/keystore.jks
rename to mina-core/src/test/resources/org/apache/mina/filter/ssl/keystore.jks
diff --git 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl/keystore.sslTest 
b/mina-core/src/test/resources/org/apache/mina/filter/ssl/keystore.sslTest
deleted file mode 100644
index 36190ba..0000000
Binary files 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl/keystore.sslTest and 
/dev/null differ
diff --git 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl2/truststore.jks 
b/mina-core/src/test/resources/org/apache/mina/filter/ssl/truststore.jks
similarity index 100%
rename from 
mina-core/src/test/resources/org/apache/mina/filter/ssl2/truststore.jks
rename to mina-core/src/test/resources/org/apache/mina/filter/ssl/truststore.jks
diff --git 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl/truststore.sslTest 
b/mina-core/src/test/resources/org/apache/mina/filter/ssl/truststore.sslTest
deleted file mode 100644
index 48c5963..0000000
Binary files 
a/mina-core/src/test/resources/org/apache/mina/filter/ssl/truststore.sslTest 
and /dev/null differ

Reply via email to