8036095: RMI tests using testlibrary.RMID and testlibrary.JavaVM do not pass through vmoptions

Reviewed-by: alanb
This commit is contained in:
Stuart Marks 2014-03-06 14:26:26 -08:00
parent 2156253925
commit 2e0600a5c0
43 changed files with 104 additions and 129 deletions

View File

@ -30,8 +30,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -33,8 +33,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -32,8 +32,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -31,8 +31,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -18,8 +18,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -16,8 +16,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -22,8 +22,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -23,8 +23,7 @@ grant {
permission java.util.PropertyPermission "java.compiler", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
permission java.util.PropertyPermission "java.rmi.activation.port", "write";

View File

@ -9,8 +9,7 @@ grant codeBase "file:${java.home}/lib/ext/*" {
grant {
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
};

View File

@ -15,8 +15,7 @@ grant {
permission java.io.FilePermission ".${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -19,8 +19,7 @@ grant {
permission java.io.FilePermission ".${/}codebase${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
};

View File

@ -17,8 +17,7 @@ grant {
".${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -14,8 +14,7 @@ grant {
".${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -20,8 +20,7 @@ grant {
permission java.lang.reflect.ReflectPermission "newProxyInPackage.java.util.zip";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
};

View File

@ -17,8 +17,7 @@ grant {
".${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -21,8 +21,7 @@ grant {
".${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -16,8 +16,7 @@ grant {
permission java.io.FilePermission ".${/}-", "read,write,delete";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";
};

View File

@ -25,8 +25,7 @@ grant {
permission java.util.PropertyPermission "java.security.manager", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -17,8 +17,7 @@ grant {
permission java.io.FilePermission "${java.home}${/}bin${/}java", "execute";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -17,8 +17,7 @@ grant {
permission java.io.FilePermission "${java.home}${/}bin${/}java", "execute";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -17,8 +17,7 @@ grant {
permission java.util.PropertyPermission "package.restrict.access.sun.rmi", "read";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2014, 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
@ -124,7 +124,11 @@ public class JavaVM {
addOptions(new String[] { option });
}
addOptions(new String[] { getCodeCoverageOptions() });
addOptions(new String[] {
getCodeCoverageOptions(),
TestParams.testJavaOpts,
TestParams.testVmOpts
});
StringTokenizer optionsTokenizer = new StringTokenizer(options);
StringTokenizer argsTokenizer = new StringTokenizer(args);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2014, 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
@ -117,6 +117,18 @@ public class RMID extends JavaVM {
args += " -C-Dtest.classes=" + TestParams.testClasses;
}
if (!TestParams.testJavaOpts.equals("")) {
for (String a : TestParams.testJavaOpts.split(" +")) {
args += " -C" + a;
}
}
if (!TestParams.testVmOpts.equals("")) {
for (String a : TestParams.testVmOpts.split(" +")) {
args += " -C" + a;
}
}
args += " -C-Djava.rmi.server.useCodebaseOnly=false ";
args += " " + getCodeCoverageArgs();

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2014, 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
@ -154,15 +154,19 @@ public class TestLibrary {
return false;
}
public static String getProperty(String property, String defaultVal) {
final String prop = property;
final String def = defaultVal;
return java.security.AccessController.doPrivileged(
new java.security.PrivilegedAction<String>() {
public String run() {
return System.getProperty(prop, def);
}
});
public static String getProperty(final String property,
final String defaultVal) {
try {
return java.security.AccessController.doPrivileged(
new java.security.PrivilegedAction<String>() {
public String run() {
return System.getProperty(property, defaultVal);
}
});
} catch (Exception ex) {
bomb("Exception getting property " + property, ex);
throw new AssertionError("this should be unreachable");
}
}
/**

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2000, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2014, 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
@ -32,55 +32,49 @@ import java.io.File;
public class TestParams {
/** variables that hold value property values */
public static String testSrc = null;
public static String testClasses = null;
public static final String testSrc;
public static final String testClasses;
/** name of default security policy */
public static String defaultPolicy = null;
/** name of default security policy for test JVM */
public static final String defaultPolicy;
/** name of default security policy for RMID */
public static String defaultRmidPolicy = null;
public static final String defaultRmidPolicy;
/** name of default security policy for activation groups */
public static String defaultGroupPolicy = null;
public static final String defaultGroupPolicy;
/** name of default security manager */
public static String defaultSecurityManager =
"java.rmi.RMISecurityManager";
public static final String defaultSecurityManager;
/** VM options string */
public static final String testVmOpts;
/** Java options string */
public static final String testJavaOpts;
/* Initalize commonly used strings */
static {
try {
testSrc = TestLibrary.
getProperty("test.src", ".");
testClasses = TestLibrary.
getProperty("test.classes", ".");
testSrc = TestLibrary.getProperty("test.src", ".");
testClasses = TestLibrary.getProperty("test.classes", ".");
// if policy file already set use it
defaultPolicy = TestLibrary.
getProperty("java.security.policy",
defaultPolicy);
if (defaultPolicy == null) {
defaultPolicy = testSrc + File.separatorChar +
"security.policy";
}
// if manager prop set use it
defaultSecurityManager = TestLibrary.
getProperty("java.security.manager",
defaultSecurityManager);
defaultRmidPolicy =
testSrc + File.separatorChar + "rmid.security.policy";
defaultGroupPolicy = testSrc +
File.separatorChar + "group.security.policy";
} catch (SecurityException se) {
TestLibrary.bomb("Security exception received" +
" during test initialization:",
se);
String dp = TestLibrary.getProperty("java.security.policy", null);
if (dp == null) {
dp = testSrc + File.separatorChar + "security.policy";
}
defaultPolicy = dp;
defaultRmidPolicy =
testSrc + File.separatorChar + "rmid.security.policy";
defaultGroupPolicy =
testSrc + File.separatorChar + "group.security.policy";
defaultSecurityManager = TestLibrary.getProperty(
"java.security.manager", "java.lang.SecurityManager");
testVmOpts = TestLibrary.getProperty("test.vm.opts", "");
testJavaOpts = TestLibrary.getProperty("test.java.opts", "");
}
}

View File

@ -14,8 +14,7 @@ grant {
permission java.io.FilePermission "${java.home}${/}bin${/}java", "execute";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -19,8 +19,7 @@ grant {
permission java.io.FilePermission "${java.home}${/}bin${/}java", "execute";
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";

View File

@ -9,8 +9,7 @@ grant codeBase "file:${java.home}/lib/ext/*" {
grant {
// used by TestLibrary to determine test environment
permission java.util.PropertyPermission "test.classes", "read";
permission java.util.PropertyPermission "test.src", "read";
permission java.util.PropertyPermission "test.*", "read";
permission java.util.PropertyPermission "user.dir", "read";
permission java.util.PropertyPermission "java.home", "read";