diff options
author | Bjørn Christian Seime <bjorncs@vespa.ai> | 2023-11-23 14:27:44 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@vespa.ai> | 2023-11-23 14:47:29 +0100 |
commit | a7e6903c3b894de22a400956dbfbf2f70983f88e (patch) | |
tree | 44ef6b2c7bda33ad325c9c0a26d2b1ea42ca4a5d /security-utils | |
parent | fb17231ed9537ad63d9f47ae76128a09839ba89d (diff) |
Add build method returning `X509SslContext`
Diffstat (limited to 'security-utils')
-rw-r--r-- | security-utils/src/main/java/com/yahoo/security/SslContextBuilder.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/security-utils/src/main/java/com/yahoo/security/SslContextBuilder.java b/security-utils/src/main/java/com/yahoo/security/SslContextBuilder.java index 3dafc36b08a..cedad3afc9b 100644 --- a/security-utils/src/main/java/com/yahoo/security/SslContextBuilder.java +++ b/security-utils/src/main/java/com/yahoo/security/SslContextBuilder.java @@ -129,7 +129,10 @@ public class SslContextBuilder { return this; } - public SSLContext build() { + public SSLContext build() { return buildContext().context(); } + + /** @return same {@link #build()} but includes the {@link SSLContext} instance's associated trust/key managers */ + public X509SslContext buildContext() { try { SSLContext sslContext = SSLContext.getInstance(TlsContext.SSL_CONTEXT_VERSION); X509ExtendedTrustManager trustManager = this.trustManager != null @@ -139,7 +142,7 @@ public class SslContextBuilder { ? this.keyManager : keyManagerFactory.createKeyManager(keyStoreSupplier.get(), keyStorePassword); sslContext.init(new KeyManager[] {keyManager}, new TrustManager[] {trustManager}, null); - return sslContext; + return new X509SslContext(sslContext, trustManager, keyManager); } catch (GeneralSecurityException e) { throw new RuntimeException(e); } catch (IOException e) { |