|
54 | 54 | import java.security.cert.Certificate;
|
55 | 55 | import java.security.cert.X509Certificate;
|
56 | 56 | import java.util.HashMap;
|
| 57 | +import java.util.List; |
57 | 58 | import java.util.Properties;
|
58 | 59 | import java.util.concurrent.CountDownLatch;
|
59 | 60 | import java.util.concurrent.TimeUnit;
|
@@ -819,8 +820,42 @@ public void start() throws RuntimeError, ConfigError {
|
819 | 820 | }
|
820 | 821 |
|
821 | 822 | public void stop() {
|
| 823 | + try { |
| 824 | + logSSLInfo(); |
| 825 | + } catch (Exception e) { |
| 826 | + LOGGER.error("Failed to log SSL info", e); |
| 827 | + } |
| 828 | + |
822 | 829 | connector.stop();
|
823 | 830 | }
|
| 831 | + |
| 832 | + private void logSSLInfo() throws Exception { |
| 833 | + List<SessionID> sessionsIDs = connector.getSessions(); |
| 834 | + LOGGER.info("All session IDs: {}", sessionsIDs); |
| 835 | + |
| 836 | + for (SessionID sessionID : sessionsIDs) { |
| 837 | + Session session = findSession(sessionID); |
| 838 | + |
| 839 | + if (session == null) { |
| 840 | + LOGGER.info("No session found for ID: {}", sessionID); |
| 841 | + continue; |
| 842 | + } |
| 843 | + |
| 844 | + SSLSession sslSession = findSSLSession(session); |
| 845 | + |
| 846 | + if (sslSession == null) { |
| 847 | + LOGGER.info("No SSL session found for session: {}", session); |
| 848 | + continue; |
| 849 | + } |
| 850 | + |
| 851 | + Throwable exception = this.exception.get(); |
| 852 | + String exceptionMessage = exception != null ? exception.getMessage() : null; |
| 853 | + Class<?> exceptionType = exception != null ? exception.getClass() : null; |
| 854 | + |
| 855 | + LOGGER.info("SSL session info [sessionID={},isLoggedOn={},sslSession={},peerCertificates={},localCertificates={},peerPrincipal={},exceptionMessage={},exceptionType={}]", |
| 856 | + sessionID, session.isLoggedOn(), sslSession, sslSession.getPeerCertificates(), sslSession.getLocalCertificates(), sslSession.getPeerPrincipal(), exceptionMessage, exceptionType); |
| 857 | + } |
| 858 | + } |
824 | 859 | }
|
825 | 860 |
|
826 | 861 | static class TestAcceptor extends TestConnector {
|
|
0 commit comments