NO-JIRA: Fixing OpenWireConnectionTimeoutTest failure

This commit is contained in:
Christopher L. Shannon (cshannon) 2016-09-01 10:10:52 -04:00
parent 4a1f2f7ca7
commit e57de54410
1 changed files with 14 additions and 27 deletions

View File

@ -21,19 +21,12 @@ import static org.junit.Assert.assertTrue;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.net.Socket; import java.net.Socket;
import java.security.SecureRandom;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
import java.util.Vector; import java.util.Vector;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import javax.net.ssl.KeyManager;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocketFactory; import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import org.apache.activemq.broker.BrokerService; import org.apache.activemq.broker.BrokerService;
import org.apache.activemq.broker.TransportConnector; import org.apache.activemq.broker.TransportConnector;
@ -61,12 +54,26 @@ public class OpenWireConnectionTimeoutTest {
@Rule public TestName name = new TestName(); @Rule public TestName name = new TestName();
public static final String KEYSTORE_TYPE = "jks";
public static final String PASSWORD = "password";
public static final String SERVER_KEYSTORE = "src/test/resources/server.keystore";
public static final String TRUST_KEYSTORE = "src/test/resources/client.keystore";
private Socket connection; private Socket connection;
protected String connectorScheme; protected String connectorScheme;
protected int port; protected int port;
protected BrokerService brokerService; protected BrokerService brokerService;
protected Vector<Throwable> exceptions = new Vector<Throwable>(); protected Vector<Throwable> exceptions = new Vector<Throwable>();
static {
System.setProperty("javax.net.ssl.trustStore", TRUST_KEYSTORE);
System.setProperty("javax.net.ssl.trustStorePassword", PASSWORD);
System.setProperty("javax.net.ssl.trustStoreType", KEYSTORE_TYPE);
System.setProperty("javax.net.ssl.keyStore", SERVER_KEYSTORE);
System.setProperty("javax.net.ssl.keyStoreType", KEYSTORE_TYPE);
System.setProperty("javax.net.ssl.keyStorePassword", PASSWORD);
}
@Parameters(name="{0}") @Parameters(name="{0}")
public static Collection<Object[]> data() { public static Collection<Object[]> data() {
return Arrays.asList(new Object[][] { return Arrays.asList(new Object[][] {
@ -182,10 +189,6 @@ public class OpenWireConnectionTimeoutTest {
brokerService.setUseJmx(false); brokerService.setUseJmx(false);
brokerService.getManagementContext().setCreateConnector(false); brokerService.getManagementContext().setCreateConnector(false);
SSLContext ctx = SSLContext.getInstance("TLS");
ctx.init(new KeyManager[0], new TrustManager[]{new DefaultTrustManager()}, new SecureRandom());
SSLContext.setDefault(ctx);
// Setup SSL context... // Setup SSL context...
final File classesDir = new File(OpenWireConnectionTimeoutTest.class.getProtectionDomain().getCodeSource().getLocation().getFile()); final File classesDir = new File(OpenWireConnectionTimeoutTest.class.getProtectionDomain().getCodeSource().getLocation().getFile());
File keystore = new File(classesDir, "../../src/test/resources/server.keystore"); File keystore = new File(classesDir, "../../src/test/resources/server.keystore");
@ -236,20 +239,4 @@ public class OpenWireConnectionTimeoutTest {
brokerService = null; brokerService = null;
} }
} }
public class DefaultTrustManager implements X509TrustManager {
@Override
public void checkClientTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {
}
@Override
public void checkServerTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return new X509Certificate[0];
}
}
} }