Remove custom security.policy, use JMH-provided alternative JEP-230-microbenchmarks-branch
authorredestad
Tue, 16 Oct 2018 15:45:19 +0200
branchJEP-230-microbenchmarks-branch
changeset 56975 3053039bdda3
parent 56954 4762fcec08d4
child 56978 8fbb2fb7589f
Remove custom security.policy, use JMH-provided alternative
test/micro/classes/org/openjdk/bench/java/lang/reflect/ClazzWithSecurityManager.java
test/micro/resources/org/openjdk/bench/java/security/security.policy
--- a/test/micro/classes/org/openjdk/bench/java/lang/reflect/ClazzWithSecurityManager.java	Thu Oct 11 09:20:07 2018 -0700
+++ b/test/micro/classes/org/openjdk/bench/java/lang/reflect/ClazzWithSecurityManager.java	Tue Oct 16 15:45:19 2018 +0200
@@ -29,6 +29,8 @@
 import java.io.IOException;
 import java.io.InputStreamReader;
 import java.io.PrintWriter;
+import java.net.URI;
+import java.net.URISyntaxException;
 import java.security.NoSuchAlgorithmException;
 import java.security.Policy;
 import java.security.URIParameter;
@@ -46,21 +48,9 @@
 public class ClazzWithSecurityManager extends Clazz {
 
     @Setup
-    public void setup() throws IOException, NoSuchAlgorithmException {
-        File policyFile = File.createTempFile("security", "policy");
-        policyFile.deleteOnExit();
-
-        PrintWriter writer = new PrintWriter(policyFile);
-        BufferedReader reader = new BufferedReader(new InputStreamReader(
-                ClazzWithSecurityManager.class.getResourceAsStream("/org/openjdk/bench/java/security/security.policy")));
-        for (String line = reader.readLine(); line != null; line = reader.readLine()) {
-            writer.println(line);
-        }
-        reader.close();
-        writer.close();
-
-        Policy policy = Policy.getInstance("JavaPolicy", new URIParameter(policyFile.toURI()));
-        Policy.setPolicy(policy);
+    public void setup() throws IOException, NoSuchAlgorithmException, URISyntaxException {
+        URI policyFile = ClazzWithSecurityManager.class.getResource("/jmh-security.policy").toURI();
+        Policy.setPolicy(Policy.getInstance("JavaPolicy", new URIParameter(policyFile)));
         System.setSecurityManager(new SecurityManager());
     }
 }
--- a/test/micro/resources/org/openjdk/bench/java/security/security.policy	Thu Oct 11 09:20:07 2018 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-//    Copyright (c) 2014, 2017 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.  Oracle designates this
-//    particular file as subject to the "Classpath" exception as provided
-//    by Oracle in the LICENSE file that accompanied this code.
-//
-//    This code is distributed in the hope that it will be useful, but WITHOUT
-//    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-//    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-//    version 2 for more details (a copy is included in the LICENSE file that
-//    accompanied this code).
-//
-//    You should have received a copy of the GNU General Public License version
-//    2 along with this work; if not, write to the Free Software Foundation,
-//    Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-//
-//    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.
-grant {
-    permission java.lang.RuntimePermission "accessClassInPackage.sun.misc";
-    permission java.lang.RuntimePermission "accessDeclaredMembers";
-    permission java.lang.RuntimePermission "createSecurityManager";
-    permission java.lang.RuntimePermission "getProtectionDomain";
-    permission java.lang.RuntimePermission "modifyThread";
-    permission java.lang.RuntimePermission "setSecurityManager";
-    permission java.security.SecurityPermission "createPolicy.JavaPolicy";
-    permission java.security.SecurityPermission "setPolicy";
-    permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
-    permission java.util.PropertyPermission "*", "read, write";
-    permission java.lang.management.ManagementPermission "monitor";
-    permission java.io.FilePermission "/-", "read,write,execute,delete";
-    permission java.net.SocketPermission "*", "connect,resolve,accept,listen";
-};
\ No newline at end of file