Search in sources :

Example 21 with SSLEngine

use of javax.net.ssl.SSLEngine in project quorrabot by GloriousEggroll.

the class DefaultSSLWebSocketServerFactory method wrapChannel.

@Override
public ByteChannel wrapChannel(SocketChannel channel, SelectionKey key) throws IOException {
    SSLEngine e = sslcontext.createSSLEngine();
    e.setUseClientMode(false);
    return new SSLSocketChannel2(channel, e, exec, key);
}
Also used : SSLSocketChannel2(org.java_websocket.SSLSocketChannel2) SSLEngine(javax.net.ssl.SSLEngine)

Example 22 with SSLEngine

use of javax.net.ssl.SSLEngine in project robovm by robovm.

the class MySslContext method test_createSSLEngine.

/**
     * @throws KeyManagementException
     * javax.net.ssl.SSLContext#createSSLEngine()
     */
public void test_createSSLEngine() throws KeyManagementException {
    if (!DEFSupported)
        fail(NotSupportMsg);
    SSLContextSpi spi = new MySSLContextSpi();
    SSLContext sslContext = new MySslContext(spi, defaultProvider, defaultProtocol);
    sslContext.init(null, null, new SecureRandom());
    SSLEngine sslEngine = sslContext.createSSLEngine();
    assertNotNull("SSL engine is null", sslEngine);
}
Also used : MySSLContextSpi(org.apache.harmony.xnet.tests.support.MySSLContextSpi) MySSLContextSpi(org.apache.harmony.xnet.tests.support.MySSLContextSpi) SSLContextSpi(javax.net.ssl.SSLContextSpi) SSLEngine(javax.net.ssl.SSLEngine) SecureRandom(java.security.SecureRandom) SSLContext(javax.net.ssl.SSLContext)

Example 23 with SSLEngine

use of javax.net.ssl.SSLEngine in project robovm by robovm.

the class MySslContext method test_createSSLEngineLjava_lang_StringI.

/**
     * @throws KeyManagementException
     * javax.net.ssl.SSLContext#createSSLEngine(java.lang.String, int)
     */
public void test_createSSLEngineLjava_lang_StringI() throws KeyManagementException {
    if (!DEFSupported)
        fail(NotSupportMsg);
    SSLContextSpi spi = new MySSLContextSpi();
    SSLContext sslContext = new MySslContext(spi, defaultProvider, defaultProtocol);
    sslContext.init(null, null, new SecureRandom());
    SSLEngine sslEngine = sslContext.createSSLEngine("www.fortify.net", 80);
    assertNotNull("SSL engine is null", sslEngine);
}
Also used : MySSLContextSpi(org.apache.harmony.xnet.tests.support.MySSLContextSpi) MySSLContextSpi(org.apache.harmony.xnet.tests.support.MySSLContextSpi) SSLContextSpi(javax.net.ssl.SSLContextSpi) SSLEngine(javax.net.ssl.SSLEngine) SecureRandom(java.security.SecureRandom) SSLContext(javax.net.ssl.SSLContext)

Example 24 with SSLEngine

use of javax.net.ssl.SSLEngine in project robovm by robovm.

the class SSLContextSpiTest method test_engineCreateSSLEngine_01.

/**
     * javax.net.ssl.SSLContextSpi#engineCreateSSLEngine()
     * Verify exception when SSLContextSpi object wasn't initialiazed.
     */
public void test_engineCreateSSLEngine_01() {
    SSLContextSpiImpl ssl = new SSLContextSpiImpl();
    try {
        SSLEngine sleng = ssl.engineCreateSSLEngine();
        fail("RuntimeException wasn't thrown");
    } catch (RuntimeException re) {
        String str = re.getMessage();
        if (!str.equals("Not initialiazed"))
            fail("Incorrect exception message: " + str);
    } catch (Exception e) {
        fail("Incorrect exception " + e + " was thrown");
    }
}
Also used : SSLEngine(javax.net.ssl.SSLEngine) SSLContextSpiImpl(org.apache.harmony.xnet.tests.support.SSLContextSpiImpl) KeyManagementException(java.security.KeyManagementException)

Example 25 with SSLEngine

use of javax.net.ssl.SSLEngine in project robovm by robovm.

the class SSLContextSpiTest method test_commonTest_02.

/**
     * SSLContextSpi#engineCreateSSLEngine()
     * SSLContextSpi#engineCreateSSLEngine(String host, int port)
     * SSLContextSpi#engineGetClientSessionContext()
     * SSLContextSpi#engineGetServerSessionContext()
     * SSLContextSpi#engineGetServerSocketFactory()
     * SSLContextSpi#engineGetSocketFactory()
     */
public void test_commonTest_02() {
    SSLContextSpiImpl ssl = new SSLContextSpiImpl();
    String defaultAlgorithm = Security.getProperty("ssl.KeyManagerFactory.algorithm");
    try {
        KeyManagerFactory kmf = KeyManagerFactory.getInstance(defaultAlgorithm);
        char[] pass = "password".toCharArray();
        kmf.init(null, pass);
        KeyManager[] km = kmf.getKeyManagers();
        defaultAlgorithm = Security.getProperty("ssl.TrustManagerFactory.algorithm");
        TrustManagerFactory trustMF = TrustManagerFactory.getInstance(defaultAlgorithm);
        KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
        ks.load(null, null);
        trustMF.init(ks);
        TrustManager[] tm = trustMF.getTrustManagers();
        SecureRandom sr = SecureRandom.getInstance("SHA1PRNG");
        ssl.engineInit(km, tm, sr);
    } catch (Exception ex) {
        fail(ex + " unexpected exception");
    }
    try {
        assertNotNull("Subtest_01: Object is NULL", ssl.engineCreateSSLEngine());
        SSLEngine sleng = ssl.engineCreateSSLEngine("localhost", 1080);
        assertNotNull("Subtest_02: Object is NULL", sleng);
        assertEquals(sleng.getPeerPort(), 1080);
        assertEquals(sleng.getPeerHost(), "localhost");
        assertNull("Subtest_03: Object not NULL", ssl.engineGetClientSessionContext());
        assertNull("Subtest_04: Object not NULL", ssl.engineGetServerSessionContext());
        assertNull("Subtest_05: Object not NULL", ssl.engineGetServerSocketFactory());
        assertNull("Subtest_06: Object not NULL", ssl.engineGetSocketFactory());
    } catch (Exception e) {
        fail("Unexpected exception " + e);
    }
}
Also used : SSLEngine(javax.net.ssl.SSLEngine) SecureRandom(java.security.SecureRandom) KeyStore(java.security.KeyStore) KeyManagementException(java.security.KeyManagementException) KeyManagerFactory(javax.net.ssl.KeyManagerFactory) TrustManager(javax.net.ssl.TrustManager) TrustManagerFactory(javax.net.ssl.TrustManagerFactory) KeyManager(javax.net.ssl.KeyManager) SSLContextSpiImpl(org.apache.harmony.xnet.tests.support.SSLContextSpiImpl)

Aggregations

SSLEngine (javax.net.ssl.SSLEngine)494 IOException (java.io.IOException)97 SSLContext (javax.net.ssl.SSLContext)97 ByteBuffer (java.nio.ByteBuffer)91 SelfSignedCertificate (io.netty.handler.ssl.util.SelfSignedCertificate)75 SSLException (javax.net.ssl.SSLException)71 Test (org.junit.Test)64 NoSuchAlgorithmException (java.security.NoSuchAlgorithmException)54 SslHandler (io.netty.handler.ssl.SslHandler)52 SSLEngineResult (javax.net.ssl.SSLEngineResult)50 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)47 MethodSource (org.junit.jupiter.params.provider.MethodSource)44 SSLParameters (javax.net.ssl.SSLParameters)43 InetSocketAddress (java.net.InetSocketAddress)42 KeyManagementException (java.security.KeyManagementException)42 ReadOnlyBufferException (java.nio.ReadOnlyBufferException)35 KeyStore (java.security.KeyStore)28 Test (org.junit.jupiter.api.Test)22 ChannelHandlerContext (io.netty.channel.ChannelHandlerContext)21 Socket (java.net.Socket)21