List of usage examples for io.netty.handler.ssl OpenSsl version
public static int version()
From source file:com.floragunn.searchguard.ssl.rest.SearchGuardSSLInfoAction.java
License:Apache License
@Override protected void handleRequest(final RestRequest request, final RestChannel channel, final Client client) throws Exception { BytesRestResponse response = null;/*from ww w .j a v a 2 s . c om*/ XContentBuilder builder = channel.newBuilder(); try { final X509Certificate[] certs = request.getFromContext("_sg_ssl_peer_certificates"); builder.startObject(); builder.field("principal", (String) request.getFromContext("_sg_ssl_principal")); builder.field("peer_certificates", certs != null && certs.length > 0 ? certs.length + "" : "0"); builder.field("ssl_protocol", (String) request.getFromContext("_sg_ssl_protocol")); builder.field("ssl_cipher", (String) request.getFromContext("_sg_ssl_cipher")); builder.field("ssl_openssl_available", OpenSsl.isAvailable()); builder.field("ssl_openssl_version", OpenSsl.version()); builder.field("ssl_openssl_version_string", OpenSsl.versionString()); Throwable openSslUnavailCause = OpenSsl.unavailabilityCause(); builder.field("ssl_openssl_non_available_cause", openSslUnavailCause == null ? "" : openSslUnavailCause.toString()); builder.field("ssl_provider_http", sgks.getHTTPProviderName()); builder.field("ssl_provider_transport_server", sgks.getTransportServerProviderName()); builder.field("ssl_provider_transport_client", sgks.getTransportClientProviderName()); builder.endObject(); response = new BytesRestResponse(RestStatus.OK, builder); } catch (final Exception e1) { logger.error("Error handle request " + e1, e1); builder = channel.newBuilder(); builder.startObject(); builder.field("error", e1.toString()); builder.endObject(); response = new BytesRestResponse(RestStatus.INTERNAL_SERVER_ERROR, builder); } channel.sendResponse(response); }
From source file:com.linecorp.armeria.common.util.NativeLibraries.java
License:Apache License
/** * Logs the availability of the native libraries used by Armeria. This method does nothing if it was * called once before./*w w w .j a v a 2s. c o m*/ */ public static void report() { if (!reported.compareAndSet(false, true)) { return; } if (USE_EPOLL) { logger.info("/dev/epoll: " + (Epoll.isAvailable() ? "yes" : "no (" + filterCause(Epoll.unavailabilityCause()) + ')')); } else { logger.info("/dev/epoll: disabled"); } if (USE_OPENSSL) { logger.info("OpenSSL: " + (OpenSsl.isAvailable() ? "yes (" + OpenSsl.versionString() + ", " + OpenSsl.version() + ')' : "no (" + filterCause(OpenSsl.unavailabilityCause()) + ')')); } else { logger.info("OpenSSL: disabled"); } }
From source file:io.grpc.netty.ProtocolNegotiators.java
License:Apache License
@VisibleForTesting static void logSslEngineDetails(Level level, ChannelHandlerContext ctx, String msg, @Nullable Throwable t) { if (!log.isLoggable(level)) { return;/* w w w. j av a 2s . c om*/ } SslHandler sslHandler = ctx.pipeline().get(SslHandler.class); SSLEngine engine = sslHandler.engine(); StringBuilder builder = new StringBuilder(msg); builder.append("\nSSLEngine Details: [\n"); if (engine instanceof OpenSslEngine) { builder.append(" OpenSSL, "); builder.append("Version: 0x").append(Integer.toHexString(OpenSsl.version())); builder.append(" (").append(OpenSsl.versionString()).append("), "); builder.append("ALPN supported: ").append(OpenSsl.isAlpnSupported()); } else if (JettyTlsUtil.isJettyAlpnConfigured()) { builder.append(" Jetty ALPN"); } else if (JettyTlsUtil.isJettyNpnConfigured()) { builder.append(" Jetty NPN"); } else if (JettyTlsUtil.isJava9AlpnAvailable()) { builder.append(" JDK9 ALPN"); } builder.append("\n TLS Protocol: "); builder.append(engine.getSession().getProtocol()); builder.append("\n Application Protocol: "); builder.append(sslHandler.applicationProtocol()); builder.append("\n Need Client Auth: "); builder.append(engine.getNeedClientAuth()); builder.append("\n Want Client Auth: "); builder.append(engine.getWantClientAuth()); builder.append("\n Supported protocols="); builder.append(Arrays.toString(engine.getSupportedProtocols())); builder.append("\n Enabled protocols="); builder.append(Arrays.toString(engine.getEnabledProtocols())); builder.append("\n Supported ciphers="); builder.append(Arrays.toString(engine.getSupportedCipherSuites())); builder.append("\n Enabled ciphers="); builder.append(Arrays.toString(engine.getEnabledCipherSuites())); builder.append("\n]"); log.log(level, builder.toString(), t); }