@Override public ChannelPipeline getPipeline() throws Exception { ChannelPipeline pipeline = Channels.pipeline(); if (enableCompression) { ZlibEncoder encoder = new ZlibEncoder(6); pipeline.addFirst("deflater", encoder); pipeline.addFirst("inflater", new ZlibDecoder()); } sslEngineSupplier.get().ifPresent(sslEngine -> { logger.info("SSLEngine protocols enabled: " + Arrays.asList(sslEngine.getEnabledProtocols())); // addFirst() will make SSL handling the first stage of decoding // and the last stage of encoding this must be added after // adding compression handling above pipeline.addFirst("ssl", new SslHandler(sslEngine)); }); if (enableIpFilter) { logger.info("Setting up ipFilter with the following rule definition: " + patternRuleConfigDefinition); IpFilterRuleHandler ipFilterHandler = new IpFilterRuleHandler(); ipFilterHandler.addAll(rules); logger.info("Adding ipFilter with " + ipFilterHandler.size() + " rules"); pipeline.addFirst("ipFilter", ipFilterHandler); } return pipeline; } }
@Override public SocketChannel newChannel(ChannelPipeline pipeline) { try { ZlibEncoder encoder = new ZlibEncoder(6); pipeline.addFirst("deflater", encoder); pipeline.addFirst("inflater", new ZlibDecoder()); return super.newChannel(pipeline); } catch (Exception ex) { throw new RuntimeException("Cannot create Compression channel", ex); } } }
@Override public SocketChannel newChannel(ChannelPipeline pipeline) { try { SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, new TrustManager[]{new BogusTrustManager()}, null); SSLEngine sslEngine = sslContext.createSSLEngine(); sslEngine.setUseClientMode(true); pipeline.addFirst("ssl", new SslHandler(sslEngine)); return super.newChannel(pipeline); } catch (Exception ex) { throw new RuntimeException("Cannot create SSL channel", ex); } } }
@Override public ChannelPipeline getPipeline() { syslogTcpHandler handler = new syslogTcpHandler(); handler.setEventSize(eventSize); handler.setFormater(formaterProp); handler.setKeepFields(keepFields); handler.setClientIPHeader(clientIPHeader); handler.setClientHostnameHeader(clientHostnameHeader); ChannelPipeline pipeline = Channels.pipeline(handler); sslEngineSupplier.get().ifPresent(sslEngine -> { pipeline.addFirst("ssl", new SslHandler(sslEngine)); }); return pipeline; } }
pipeline.addFirst("ssl", sslHandler);
realChannel.getPipeline().addFirst("ssl", sslHandler); sslHandshakeFuture = sslHandler.handshake();
@Override public ChannelPipeline getPipeline() throws Exception { ChannelPipeline cp = super.getPipeline(); SSLEngine engine = context.createSSLEngine(); engine.setUseClientMode(false); cp.addFirst("sslHandler", new SslHandler(engine)); return cp; }
public void verifyChannelPipeline(ChannelPipeline pipeline, String scheme) throws IOException, GeneralSecurityException { boolean sslHandlerConfigured = isSslHandlerConfigured(pipeline); if (isSecure(scheme)) { if (!sslHandlerConfigured) pipeline.addFirst(SSL_HANDLER, new SslInitializer(this)); } else if (sslHandlerConfigured) pipeline.remove(SSL_HANDLER); }
public void upgradeProtocol(ChannelPipeline pipeline, String scheme, String host, int port) throws IOException, GeneralSecurityException { if (pipeline.get(HTTP_HANDLER) != null) pipeline.remove(HTTP_HANDLER); if (isSecure(scheme)) if (isSslHandlerConfigured(pipeline)) { pipeline.addAfter(SSL_HANDLER, HTTP_HANDLER, newHttpClientCodec()); } else { pipeline.addFirst(HTTP_HANDLER, newHttpClientCodec()); pipeline.addFirst(SSL_HANDLER, createSslHandler(host, port)); } else pipeline.addFirst(HTTP_HANDLER, newHttpClientCodec()); if (isWebSocket(scheme)) { pipeline.addAfter(HTTP_PROCESSOR, WS_PROCESSOR, wsProcessor); pipeline.remove(HTTP_PROCESSOR); } }
public static synchronized void addToPipeline(ChannelPipeline cp) { checkNotNull(cp, "cp is null"); if (cp.get(NAME) == null) { cp.addFirst(NAME, new TimeoutHandler()); } }
/** * Add the {@link SslHandler} to the pipeline and start encrypting after the next written message */ private void prepareStartTLS() { SslHandler filter = new SslHandler(engine, true); filter.getEngine().setUseClientMode(false); channel.getPipeline().addFirst(HandlerConstants.SSL_HANDLER, filter); }
/** * Add the {@link SslHandler} to the pipeline and start encrypting after the next written message */ private void prepareStartTLS() { SslHandler filter = new SslHandler(engine, true); filter.getEngine().setUseClientMode(false); channel.getPipeline().addFirst(HandlerConstants.SSL_HANDLER, filter); }
@Override public void channelOpen(final ChannelHandlerContext ctx, final ChannelStateEvent e) throws Exception { channel = e.getChannel(); channel.getPipeline().addFirst("encoder", new RemoteObjectEncoder(connection)); channel.getPipeline().addFirst("decoder", new RemoteObjectDecoder(connection)); }
@Override public boolean startTLS() { if (supportStartTLS() == false) return false; // enable buffering of the stream ((StartTLSOutputStream)getAttachment(ctx).get(BUFFERED_OUT)).bufferTillCRLF(); SslHandler filter = new SslHandler(engine, true); filter.getEngine().setUseClientMode(false); ctx.getPipeline().addFirst("sslHandler", filter); return true; }
public void verifyChannelPipeline(ChannelPipeline pipeline, String scheme) throws IOException, GeneralSecurityException { boolean sslHandlerConfigured = isSslHandlerConfigured(pipeline); if (isSecure(scheme)) { if (!sslHandlerConfigured) pipeline.addFirst(SSL_HANDLER, new SslInitializer(this)); } else if (sslHandlerConfigured) pipeline.remove(SSL_HANDLER); }
public void verifyChannelPipeline(ChannelPipeline pipeline, String scheme) throws IOException, GeneralSecurityException { boolean sslHandlerConfigured = isSslHandlerConfigured(pipeline); if (isSecure(scheme)) { if (!sslHandlerConfigured) pipeline.addFirst(SSL_HANDLER, new SslInitializer(this)); } else if (sslHandlerConfigured) pipeline.remove(SSL_HANDLER); }
@Override public ChannelPipeline getPipeline() throws Exception { ChannelPipeline cp = Channels.pipeline(); TimeoutHandler.addToPipeline(cp); cp.addLast("thriftUnframedDecoder", new ThriftUnframedDecoder()); if (clientConfig.sslClientConfiguration() != null) { cp.addFirst("ssl", clientConfig.sslClientConfiguration().createHandler(address)); } return cp; } };