Refine search
SslFilter sslFilter = new SslFilter(sslContext); sslFilter.setUseClientMode(useClientMode); sslFilter.setNeedClientAuth(needClientAuth); sslFilter.setWantClientAuth(wantClientAuth); if (cipherSuites != null) { sslFilter.setEnabledCipherSuites(cipherSuites); log.debug("Using these protocols: {}", Arrays.toString(protocols)); sslFilter.setEnabledProtocols(protocols); IoFilterChain chain = session.getFilterChain(); session.setAttribute(SslFilter.USE_NOTIFICATION, Boolean.TRUE); log.debug("isSslStarted: {}", sslFilter.isSslStarted(session)); session.getFilterChain().addAfter("sslFilter", "rtmpsFilter", new RTMPSIoFilter());
/** * A utility method that implements the shared functionality of getServerModeSslFilter and getClientModeSslFilter. * * This method is used to initialize and configure an instance of SslFilter for a particular pre-configured * SSLContext and SSLEngine. In most cases, developers will want to use getServerModeSslFilter or * getClientModeSslFilter instead of this method. * * @param sslContext a pre-configured SSL Context instance (cannot be null). * @param sslEngine a pre-configured SSL Engine instance (cannot be null). * @return A SslFilter instance (never null). */ private static SslFilter createSslFilter( SSLContext sslContext, SSLEngine sslEngine ) { final SslFilter filter = new SslFilter( sslContext ); // Copy configuration from the SSL Engine into the filter. filter.setUseClientMode( sslEngine.getUseClientMode() ); filter.setEnabledProtocols( sslEngine.getEnabledProtocols() ); filter.setEnabledCipherSuites( sslEngine.getEnabledCipherSuites() ); // Note that the setters for 'need' and 'want' influence each-other. Invoke only one of them! if ( sslEngine.getNeedClientAuth() ) { filter.setNeedClientAuth( true ); } else if ( sslEngine.getWantClientAuth() ) { filter.setWantClientAuth( true ); } return filter; }
SslFilter filter = new SslFilter(sslContext); SSLParameters sslParameters = sslContext.getDefaultSSLParameters(); filter.setEnabledProtocols(getFilteredProtocols(sslParameters)); filter.setEnabledCipherSuites(getFilteredCipherSuites(sslParameters)); acceptor.getFilterChain().addFirst("ssl", filter); });
IoFilterChain chain = session.getIoSession().getFilterChain(); SslFilter sslFilter = ( SslFilter ) chain.get( "sslFilter" ); sslFilter = new SslFilter( sslContext, false ); sslFilter.setEnabledCipherSuites( cipherSuite.toArray( new String[cipherSuite.size()] ) ); sslFilter.setEnabledProtocols( enabledProtocols.toArray( new String[enabledProtocols.size()] ) ); sslFilter.setEnabledProtocols( new String[]{ "TLSv1", "TLSv1.1", "TLSv1.2" } ); sslFilter.setNeedClientAuth( needClientAuth ); sslFilter.setWantClientAuth( wantClientAuth ); sslFilter.setEnabledProtocols( new String[] { "TLSv1", "TLSv1.1", "TLSv1.2" } ); sslFilter.startSsl( session.getIoSession() ); session.getIoSession().setAttribute( SslFilter.DISABLE_ENCRYPTION_ONCE ); session.getIoSession().write( res );
SslFilter sslFilter = new SslFilter( sslContext ); sslFilter.setUseClientMode( true ); sslFilter.setEnabledCipherSuites( enabledCipherSuite ); sslFilter.setEnabledProtocols( enabledProtocols ); sslFilter.setEnabledProtocols( new String[] { "TLSv1", "TLSv1.1", "TLSv1.2" } ); ldapSession.getFilterChain().addFirst( SSL_FILTER_KEY, sslFilter );
@Override public void filterWrite(NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws SSLException { if (LOGGER.isDebugEnabled()) { LOGGER.debug("{}: Writing Message : {}", getSessionInfo(session), writeRequest); SslHandler sslHandler = getSslSessionHandler(session); if (!isSslStarted(session)) { sslHandler.scheduleFilterWrite(nextFilter, writeRequest); else if (session.containsAttribute(DISABLE_ENCRYPTION_ONCE)) { session.removeAttribute(DISABLE_ENCRYPTION_ONCE); sslHandler.scheduleFilterWrite(nextFilter, writeRequest); } else { encryptedBuffer)); } else { if (session.isConnected()) {
private void addSslFilter() { minaSession.suspendRead(); minaSession.suspendWrite(); SslFilter filter = new SslFilter(getServerRuntimeContext().getSslContext()); filter.setUseClientMode(clientTLS); minaSession.getFilterChain().addFirst("sslFilter", filter); if(!clientTLS) { minaSession.setAttribute(SslFilter.DISABLE_ENCRYPTION_ONCE, Boolean.TRUE); } minaSession.setAttribute(SslFilter.USE_NOTIFICATION, Boolean.TRUE); minaSession.resumeWrite(); minaSession.resumeRead(); }
if ( startInactive ) this.session.setAttribute ( SslFilter.DISABLE_ENCRYPTION_ONCE, Boolean.TRUE ); final SslFilter filter = new SslFilter ( sslContext ); filter.setUseClientMode ( clientMode ); filter.setWantClientAuth ( false ); filter.setNeedClientAuth ( false );
/** * An extended toString() method for sessions. If the SSL handshake * is not yet completed, we will print (ssl) in small caps. Once it's * completed, we will use SSL capitalized. */ /* no qualifier */String getSessionInfo(IoSession session) { StringBuilder sb = new StringBuilder(); if (session.getService() instanceof IoAcceptor) { sb.append("Session Server"); } else { sb.append("Session Client"); } sb.append('[').append(session.getId()).append(']'); SslHandler sslHandler = (SslHandler) session.getAttribute(SSL_HANDLER); if (sslHandler == null) { sb.append("(no sslEngine)"); } else if (isSslStarted(session)) { if (sslHandler.isHandshakeComplete()) { sb.append("(SSL)"); } else { sb.append("(ssl...)"); } } return sb.toString(); }
@Override public void filterClose(final NextFilter nextFilter, final IoSession session) throws SSLException { SslHandler handler = (SslHandler) session.getAttribute(SSL_HANDLER); if (handler == null) { // The connection might already have closed, or // SSL might have not started yet. nextFilter.filterClose(session); return; } WriteFuture future = null; try { synchronized (handler) { if (isSslStarted(session)) { future = initiateClosure(nextFilter, session); future.addListener(new IoFutureListener<IoFuture>() { public void operationComplete(IoFuture future) { nextFilter.filterClose(session); } }); } } handler.flushScheduledEvents(); } finally { if (future == null) { nextFilter.filterClose(session); } } }
@Override public void initializeSession(IoSession session, ConnectFuture future) { // Add filters to the session if(isUseSSLFilter()) { final SslFilter filter = new SslFilter(c); filter.setUseClientMode(true); session.getFilterChain().addFirst("SSL", filter); } session.getFilterChain().addLast( "logger", getLoggingFilter() != null ? getLoggingFilter() : new SlightlyMoreVerboseLoggingFilter() ); session.getFilterChain().addLast( "codec", getProtocolCodecFilter()); // Make the minimum idle timeout 1 second int idleTimeInSeconds = Math.max(1, Math.round(getIdleTime() / 1000.0f)); // Set all of the idle time limits. Make sure to specify values in // seconds!!! session.getConfig().setReaderIdleTime(idleTimeInSeconds); session.getConfig().setWriterIdleTime(idleTimeInSeconds); session.getConfig().setBothIdleTime(idleTimeInSeconds); } };
sslContext.init( config.getKeyManagers(), config.getTrustManagers(), config.getSecureRandom() ); SslFilter sslFilter = new SslFilter( sslContext ); sslFilter.setUseClientMode( true ); connector.getFilterChain().addFirst( "sslFilter", sslFilter ); ldapSession.setAttribute( "LDAP-Container", ldapMessageContainer );
/** {@inheritDoc} */ @Override public void sessionOpened(IoSession session) throws Exception { // START OF NATIVE SSL STUFF SSLContext sslContext = BogusSslContextFactory.getInstance(false); SslFilter sslFilter = new SslFilter(sslContext); sslFilter.setUseClientMode(true); if (sslFilter != null) { session.getFilterChain().addFirst("sslFilter", sslFilter); } // END OF NATIVE SSL STUFF super.sessionOpened(session); }
@Override public void messageReceived(NextFilter nextFilter, IoSession session, Object message) throws SSLException { if (LOGGER.isDebugEnabled()) { LOGGER.debug("{}: Message received : {}", getSessionInfo(session), message); SslHandler sslHandler = getSslSessionHandler(session); if (!isSslStarted(session) && sslHandler.isInboundDone()) { handleSslData(nextFilter, sslHandler); sslHandler.destroy(); } else { initiateClosure(nextFilter, session); session.closeNow(); } else {
sslFilter.setUseClientMode(true); if ((cipherSuites != null) && !cipherSuites.isEmpty()) { sslFilter.setEnabledCipherSuites(cipherSuites.toArray( new String[cipherSuites.size()] )); sslFilter.startSsl(this.session); } catch(SSLException se) { System.out.println("SslException:"+se);
public void setCipherSuites(String[] cipherSuites) { super.setEnabledCipherSuites(cipherSuites); } }
SslFilter sslFilter = new SslFilter(this.getSSLContext()); this.acceptor.getFilterChain().addLast("ssl", sslFilter);
@Override public void messageReceived(NextFilter nextFilter, IoSession session, Object message) throws SSLException { SslHandler handler = getSslSessionHandler(session); synchronized (handler) { if (!isSslStarted(session) && handler.isInboundDone()) { handler.scheduleMessageReceived(nextFilter, message); } else { handleSslData(nextFilter, handler); handler.destroy(); } else { initiateClosure(nextFilter, session);
/** * A utility method that implements the shared functionality of getServerModeSslFilter and getClientModeSslFilter. * * This method is used to initialize and configure an instance of SslFilter for a particular pre-configured * SSLContext and SSLEngine. In most cases, developers will want to use getServerModeSslFilter or * getClientModeSslFilter instead of this method. * * @param sslContext a pre-configured SSL Context instance (cannot be null). * @param sslEngine a pre-configured SSL Engine instance (cannot be null). * @return A SslFilter instance (never null). */ private static SslFilter createSslFilter( SSLContext sslContext, SSLEngine sslEngine ) { final SslFilter filter = new SslFilter( sslContext ); // Copy configuration from the SSL Engine into the filter. filter.setUseClientMode( sslEngine.getUseClientMode() ); filter.setEnabledProtocols( sslEngine.getEnabledProtocols() ); filter.setEnabledCipherSuites( sslEngine.getEnabledCipherSuites() ); // Note that the setters for 'need' and 'want' influence each-other. Invoke only one of them! if ( sslEngine.getNeedClientAuth() ) { filter.setNeedClientAuth( true ); } else if ( sslEngine.getWantClientAuth() ) { filter.setWantClientAuth( true ); } return filter; }
SslFilter sslFilter = new SslFilter( sslContext ); sslFilter.setUseClientMode( true ); sslFilter.setEnabledCipherSuites( enabledCipherSuite ); sslFilter.setEnabledProtocols( enabledProtocols ); sslFilter.setEnabledProtocols( new String[] { "TLSv1", "TLSv1.1", "TLSv1.2" } ); ldapSession.getFilterChain().addFirst( SSL_FILTER_KEY, sslFilter );