< prev index next >
test/jdk/sun/security/util/HostnameMatcher/NullHostnameCheck.java
Print this page
rev 53269 : 8228967: Trust/Key store and SSL context utilities for tests
Reviewed-by: xuelei
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
@@ -19,31 +19,32 @@
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
-import javax.net.ssl.KeyManagerFactory;
+import java.nio.ByteBuffer;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLEngine;
import javax.net.ssl.SSLEngineResult;
import javax.net.ssl.SSLException;
import javax.net.ssl.SSLHandshakeException;
import javax.net.ssl.SSLParameters;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
-import java.io.ByteArrayInputStream;
-import java.nio.ByteBuffer;
-import java.security.KeyStore;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-import java.util.Base64;
+
+import jdk.test.lib.security.KeyStoreUtils;
+import jdk.test.lib.security.SSLContextBuilder;
/*
* @test
* @bug 8211339 8234728
* @summary Verify hostname returns an exception instead of null pointer when
* creating a new engine
+ * @library /test/lib
* @run main NullHostnameCheck TLSv1
* @run main NullHostnameCheck TLSv1.1
* @run main NullHostnameCheck TLSv1.2
* @run main NullHostnameCheck TLSv1.3
*/
@@ -51,20 +52,17 @@
public final class NullHostnameCheck {
public static void main(String[] args) throws Exception {
String protocol = args[0];
- KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
- keyStore.load(
- new ByteArrayInputStream(Base64.getDecoder().
- decode(keystoreB64)),
- "123456".toCharArray());
- KeyManagerFactory kmf = KeyManagerFactory.getInstance(
- KeyManagerFactory.getDefaultAlgorithm());
- kmf.init(keyStore, "123456".toCharArray());
- SSLContext serverCtx = SSLContext.getInstance(protocol);
- serverCtx.init(kmf.getKeyManagers(), null, null);
+ String password = "123456";
+ SSLContext serverCtx = SSLContextBuilder.builder()
+ .keyStore(KeyStoreUtils.loadKeyStoreBase64(
+ keystoreB64, password))
+ .kmfPassphrase(password)
+ .protocol(protocol)
+ .build();
SSLEngine serverEngine = serverCtx.createSSLEngine("localhost", -1);
serverEngine.setUseClientMode(false);
SSLContext clientCtx = SSLContext.getInstance(protocol);
clientCtx.init(null, new TrustManager[] {
< prev index next >