From 2336de5a9f73bd5f46800de27374123a5f33d0d3 Mon Sep 17 00:00:00 2001 From: Norman Maurer Date: Tue, 15 Dec 2015 15:06:54 +0100 Subject: [PATCH] Throw exception if KeyManagerFactory is used with OpenSslServerContext Motivation: We currently not supported using KeyManagerFactory with OpenSslServerContext and so should throw an exception if the user tries to do so. This will at least not give suprising and hard to debug problems later. Modifications: Throw exception if a user tries to construct a OpenSslServerContext with a KeyManagerFactory Result: Fail fast if the user tries to use something that is not supported. --- .../java/io/netty/handler/ssl/OpenSslServerContext.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/handler/src/main/java/io/netty/handler/ssl/OpenSslServerContext.java b/handler/src/main/java/io/netty/handler/ssl/OpenSslServerContext.java index 856db17a3b..effacc5efd 100644 --- a/handler/src/main/java/io/netty/handler/ssl/OpenSslServerContext.java +++ b/handler/src/main/java/io/netty/handler/ssl/OpenSslServerContext.java @@ -295,6 +295,7 @@ public final class OpenSslServerContext extends OpenSslContext { ClientAuth.NONE); OpenSsl.ensureAvailability(); + checkKeyManagerFactory(keyManagerFactory); checkNotNull(keyCertChainFile, "keyCertChainFile"); if (!keyCertChainFile.isFile()) { throw new IllegalArgumentException("keyCertChainFile is not a file: " + keyCertChainFile); @@ -394,6 +395,7 @@ public final class OpenSslServerContext extends OpenSslContext { clientAuth); OpenSsl.ensureAvailability(); + checkKeyManagerFactory(keyManagerFactory); checkNotNull(keyCertChain, "keyCertChainFile"); checkNotNull(key, "keyFile"); @@ -502,4 +504,11 @@ public final class OpenSslServerContext extends OpenSslContext { public OpenSslServerSessionContext sessionContext() { return sessionContext; } + + private static void checkKeyManagerFactory(KeyManagerFactory keyManagerFactory) { + if (keyManagerFactory != null) { + throw new IllegalArgumentException( + "KeyManagerFactory is currently not supported with OpenSslServerContext"); + } + } }