test/java/lang/SecurityManager/CheckSecurityProvider.java

Print this page
7191662: JCE providers should be located via ServiceLoader

*** 21,31 **** * questions. */ /* * @test ! * @bug 6997010 * @summary Consolidate java.security files into one file with modifications */ import java.security.Provider; import java.security.Security; --- 21,31 ---- * questions. */ /* * @test ! * @bug 6997010 7191662 * @summary Consolidate java.security files into one file with modifications */ import java.security.Provider; import java.security.Security;
*** 34,63 **** import java.util.List; /* * The main benefit of this test is to catch merge errors or other types * of issues where one or more of the security providers are accidentally ! * removed. This is why the known security providers have to ! * be explicitly listed below. */ public class CheckSecurityProvider { public static void main(String[] args) throws Exception { String os = System.getProperty("os.name"); /* * This array should be updated whenever new security providers * are added to the the java.security file. * NOTE: it should be in the same order as the java.security file */ List<String> expected = new ArrayList<>(); if (os.equals("SunOS")) { - if (!isOpenJDKOnly()) { expected.add("com.oracle.security.ucrypto.UcryptoProvider"); - } expected.add("sun.security.pkcs11.SunPKCS11"); } expected.add("sun.security.provider.Sun"); expected.add("sun.security.rsa.SunRsaSign"); expected.add("sun.security.ec.SunEC"); --- 34,62 ---- import java.util.List; /* * The main benefit of this test is to catch merge errors or other types * of issues where one or more of the security providers are accidentally ! * removed. With the security manager enabled, this test can also catch ! * scenarios where the default permission policy needs to be updated. */ public class CheckSecurityProvider { public static void main(String[] args) throws Exception { String os = System.getProperty("os.name"); + System.setSecurityManager(new SecurityManager()); /* * This array should be updated whenever new security providers * are added to the the java.security file. * NOTE: it should be in the same order as the java.security file */ List<String> expected = new ArrayList<>(); if (os.equals("SunOS")) { expected.add("com.oracle.security.ucrypto.UcryptoProvider"); expected.add("sun.security.pkcs11.SunPKCS11"); } expected.add("sun.security.provider.Sun"); expected.add("sun.security.rsa.SunRsaSign"); expected.add("sun.security.ec.SunEC");
*** 66,75 **** --- 65,75 ---- expected.add("sun.security.jgss.SunProvider"); expected.add("com.sun.security.sasl.Provider"); expected.add("org.jcp.xml.dsig.internal.dom.XMLDSigRI"); expected.add("sun.security.smartcardio.SunPCSC"); expected.add("sun.security.provider.certpath.ldap.JdkLDAP"); + expected.add("com.sun.security.sasl.gsskerb.JdkSASL"); if (os.startsWith("Windows")) { expected.add("sun.security.mscapi.SunMSCAPI"); } if (os.contains("OS X")) { expected.add("apple.security.AppleProvider");
*** 88,99 **** } if (iter.hasNext()) { throw new Exception("More expected"); } } - - // Copied from CheckPackageAccess.java in the same directory - private static boolean isOpenJDKOnly() { - String prop = System.getProperty("java.runtime.name"); - return prop != null && prop.startsWith("OpenJDK"); - } } --- 88,93 ----